C#的16进制转字符串 遇到0x00怎么解决

u010683091 2017-04-21 08:35:16
C#的16进制转字符串 遇到0x00怎么解决啊,貌似0x00转成字符串是结束符
...全文
1486 17 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
u010683091 2017-04-21
  • 打赏
  • 举报
回复
引用 16 楼 xuzuning 的回复:
        static void Main(string[] args)
        {
            byte[] tmp = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
            string str = string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]);
            Console.WriteLine(str);

            //其实这样就很简单
            string str1 = BitConverter.ToString(tmp);
            Console.WriteLine(str1);
        }
   
string str1 = BitConverter.ToString(tmp);这段代码帮我解决了!!太牛掰了
xuzuning 2017-04-21
  • 打赏
  • 举报
回复
        static void Main(string[] args)
{
byte[] tmp = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
string str = string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]);
Console.WriteLine(str);

//其实这样就很简单
string str1 = BitConverter.ToString(tmp);
Console.WriteLine(str1);
}
u010683091 2017-04-21
  • 打赏
  • 举报
回复
就这么说吧,底层给我的数据是 0 0 0 0 0 0 我从底层拿到后.ToString("X2")补位成00后就出现问题
拜一刀 2017-04-21
  • 打赏
  • 举报
回复
你到底是ascii数组转字符串还是数组按照十六进制写成字符串.... ascii数组转字符串有一堆0是你数据源就有问题吧 写成十六进制字符串的话0就正常写成"00"就完了,没毛病
Mooyi_水 2017-04-21
  • 打赏
  • 举报
回复
我觉得可以结帖了吧,00不是结束符
大鱼> 2017-04-21
  • 打赏
  • 举报
回复
引用 11 楼 u010683091 的回复:
[quote=引用 9 楼 qq_17486399 的回复:] [quote=引用 6 楼 u010683091 的回复:] [quote=引用 4 楼 qq_17486399 的回复:] [quote=引用 3 楼 u010683091 的回复:] [quote=引用 2 楼 qq_17486399 的回复:] 你是这么转的呢?什么样的字符串?
string str =string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]); 这是我转换的代码[/quote] 育良书记,您是大教授,我不敢回答啊。万一错了会不会被灭口啊。[/quote] 这是什么话啊,我们要实事求是,放心大胆的答吧。[/quote] 你的后面的参数是不是有为0的情况呢?[/quote] 是的,大多数是00-00-00-00-00-00出现的问题[/quote]
u010683091 2017-04-21
  • 打赏
  • 举报
回复
引用 9 楼 qq_17486399 的回复:
[quote=引用 6 楼 u010683091 的回复:] [quote=引用 4 楼 qq_17486399 的回复:] [quote=引用 3 楼 u010683091 的回复:] [quote=引用 2 楼 qq_17486399 的回复:] 你是这么转的呢?什么样的字符串?
string str =string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]); 这是我转换的代码[/quote] 育良书记,您是大教授,我不敢回答啊。万一错了会不会被灭口啊。[/quote] 这是什么话啊,我们要实事求是,放心大胆的答吧。[/quote] 你的后面的参数是不是有为0的情况呢?[/quote] 是的,大多数是00-00-00-00-00-00出现的问题
大鱼> 2017-04-21
  • 打赏
  • 举报
回复
引用 8 楼 starfd 的回复:
\0才代表结束符,00代表啥个结束符啊
00代表就是0
大鱼> 2017-04-21
  • 打赏
  • 举报
回复
引用 6 楼 u010683091 的回复:
[quote=引用 4 楼 qq_17486399 的回复:] [quote=引用 3 楼 u010683091 的回复:] [quote=引用 2 楼 qq_17486399 的回复:] 你是这么转的呢?什么样的字符串?
string str =string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]); 这是我转换的代码[/quote] 育良书记,您是大教授,我不敢回答啊。万一错了会不会被灭口啊。[/quote] 这是什么话啊,我们要实事求是,放心大胆的答吧。[/quote] 你的后面的参数是不是有为0的情况呢?
  • 打赏
  • 举报
回复
\0才代表结束符,00代表啥个结束符啊
u010683091 2017-04-21
  • 打赏
  • 举报
回复
引用 5 楼 Forty2 的回复:
[quote=引用 3 楼 u010683091 的回复:] [quote=引用 2 楼 qq_17486399 的回复:] 你是这么转的呢?什么样的字符串?
string str =string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]); 这是我转换的代码[/quote] AB-12-34-56-CC-00 这里就是两个‘0’字符,不用担心不是结束符。[/quote] 00-00-00-00-00-00如果是这样呢?
u010683091 2017-04-21
  • 打赏
  • 举报
回复
引用 4 楼 qq_17486399 的回复:
[quote=引用 3 楼 u010683091 的回复:] [quote=引用 2 楼 qq_17486399 的回复:] 你是这么转的呢?什么样的字符串?
string str =string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]); 这是我转换的代码[/quote] 育良书记,您是大教授,我不敢回答啊。万一错了会不会被灭口啊。[/quote] 这是什么话啊,我们要实事求是,放心大胆的答吧。
Forty2 2017-04-21
  • 打赏
  • 举报
回复
引用 3 楼 u010683091 的回复:
[quote=引用 2 楼 qq_17486399 的回复:] 你是这么转的呢?什么样的字符串?
string str =string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]); 这是我转换的代码[/quote] AB-12-34-56-CC-00 这里就是两个‘0’字符,不用担心不是结束符。
大鱼> 2017-04-21
  • 打赏
  • 举报
回复
引用 3 楼 u010683091 的回复:
[quote=引用 2 楼 qq_17486399 的回复:] 你是这么转的呢?什么样的字符串?
string str =string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]); 这是我转换的代码[/quote] 育良书记,您是大教授,我不敢回答啊。万一错了会不会被灭口啊。
u010683091 2017-04-21
  • 打赏
  • 举报
回复
引用 2 楼 qq_17486399 的回复:
你是这么转的呢?什么样的字符串?
string str =string.Format("{0:X2}-{1:X2}-{2:X2}-{3:X2}-{4:X2}-{5:X2}", tmp[0], tmp[1], tmp[2], tmp[3], tmp[4], tmp[5]); 这是我转换的代码
大鱼> 2017-04-21
  • 打赏
  • 举报
回复
你是这么转的呢?什么样的字符串?
xdashewan 2017-04-21
  • 打赏
  • 举报
回复
那很可能这不是字符串

111,111

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧