C# 从Json中获取byte[] 二进制数据
2021/9/9 9:34:00
本文主要是介绍C# 从Json中获取byte[] 二进制数据,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
来自:https://www.cnblogs.com/skyheaving/p/13294569.html
步入正题:
1、考虑WebApi 接收方便,定义数据格式使用json,但是json内部的二进制对象无法正常获取,
var objModel=JsonConvert.DeserializeObject<JObject>(objRequest.ToString());
var sBytes=(byte[])objModel["sByte"]; //...Error!
2、如何获取json中的二进制对象呢?
在拼接/转换json数据前,对二进制数组做个转换,转换为base64编码的字符串,然后再webapi中接收后,再对经过base64编码的字符串进行解码。二进制数组就获取到了。
//调用接口前处理: var sFilePath="C://test.docx"; var bytes=File.ReadAllBytes(sFilePath); string base64Str=Convert.ToBase64String(bytes); string submitStr=JsonConvert.SerializeObject( new { ID=Guid.NewGuid().ToString(), byteStr=base64Str } ); //服务(接口)端接收 public string OperateAdv(dynamic objRequest) //HttpPost var objModel=JsonConvert.DescrializeObject<JObject>(objRequest.ToString()); var sBytes=objModel["byteStr"];//获取json中的二进制 字符串(dynmaic 类型) byte[] tBytes=Convert.FromBase64String(sBytes.ToString());//对解析后的二进制字符串进行base64 解码
换个方式进行处理,就能够得到想要的结果!哈哈哈。先记录一下,如果大家有其他方式处理,欢迎提示。
转换方式参考:https://www.cnblogs.com/WarBlog/p/10594900.html 编码处理json字符串中byte.
这篇关于C# 从Json中获取byte[] 二进制数据的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-12-06使用Microsoft.Extensions.AI在.NET中生成嵌入向量
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#