C# 用什么方法将BitConverter.ToString产生字符串再转换回去

所属分类: 软件编程 / C#教程 阅读数: 128
收藏 0 赞 0 分享

本文介绍了C# 用什么方法将BitConverter.ToString产生字符串再转换回去,分享给大家,具体如下:

byte[]  bytTemp  =  System.Text.Encoding.Default.GetBytes("String");  
  string  str  =  System.BitConverter.ToString(bytTemp);  
  Console.WriteLine(str);  
  
  string[]  strSplit  =  str.Split('-');  
  byte[]  bytTemp2  =  new  byte[strSplit.Length];  
  for  (int  i  =  0;  i  <  strSplit.Length;  i++)  
      bytTemp2[i]  =  byte.Parse(strSplit[i],  System.Globalization.NumberStyles.AllowHexSpecifier);  
  string  str2  =  System.Text.Encoding.Default.GetString(bytTemp2);  
  Console.WriteLine(str2);

 c#bitconverter.ToString转换为十六进制字符串

我使用 BitConverter.ToString(bytes)将字符串转换为十六进制字符串,我将其进一步转换为整数或浮点数。

但是输入流由0组成,表明字节值为0.所以假设我有一个整数,它由2个字节的输入表示,从位置x开始,第一个由 EE 组成,而第二个字节为 00 。现在当我使用 BitConverter.ToString(bytes,x,2).Replace( - ”,”)时,输出为 EE00 ,其整数值为 60928 ,但在这种情况下,输出应该是 238 字节 EE 为整数。

但在其他情况下,2个字节可能是 EE01 ,其整数值 60929 在这种情况下是正确的。

任何建议如何解决我的问题?

由于有人说这个问题令人困惑,我会重申我的问题我有很长的十六进制字符串作为输入。在十六进制字符串中,

1)前12个字节表示字符串。
2)接下来的11个字节也代表了其他一些字符串。
3)接下来1个字节表示整数。
4)接下来的3个字节表示整数。
5)接下来的4个字节表示整数。
6)接下来的4个字节表示浮点数。
7)接下来的7个字节表示字符串。
8)接下来的5个字节表示整数。

因此,对于第4种情况,如果字节是ee 00 00,那么我应该忽略0并将ee转换为整数。但是如果它是ee 00 ee,那么我应该将ee00ee转换为整数。我每次都会遵循上面提到的相同模式。

我的问题已解决。我正在犯Endianness的错误。我收到的数据是EE 00,在转换为整数之前,我应该将它作为00 EE。感谢所有为我提供解决方案的人,并抱歉错过了这个重要的问题。

PS:C# 使用BitConverter.ToString(byte[] value)转换后字符串带有横杠“-”,去掉横杠方法

使用BitConverter.ToString(byte[] value).Replace("-", ""),可去掉横杠

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

c#开发word批量转pdf源码分享

已经安装有Office环境,借助一些简单的代码即可实现批量Word转PDF,看下面的实例源码吧
收藏 0 赞 0 分享

c# xml API操作的小例子

这篇文章主要介绍了c# xml API操作的小例子,有需要的朋友可以参考一下
收藏 0 赞 0 分享

c#唯一值渲染实例代码

这篇文章主要介绍了c#唯一值渲染实例代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

淘宝IP地址库采集器c#代码

这篇文章主要介绍了淘宝IP地址库采集器c#代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C#在后台运行操作(BackgroundWorker用法)示例分享

BackgroundWorker类允许在单独的专用线程上运行操作。如果需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用BackgroundWorker类方便地解决问题,下面看示例
收藏 0 赞 0 分享

c#文本加密程序代码示例

这是一个加密软件,但只限于文本加密,加了窗口控件的滑动效果,详细看下面的代码
收藏 0 赞 0 分享

c#生成站点地图(SiteMapPath)文件示例程序

这篇文章主要介绍了c#生成站点地图(SiteMapPath)文件的示例,大家参考使用
收藏 0 赞 0 分享

C# 键盘Enter键取代Tab键实现代码

这篇文章主要介绍了C# 键盘Enter键取代Tab键实现代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C# WinForm导出Excel方法介绍

在.NET应用中,导出Excel是很常见的需求,导出Excel报表大致有以下三种方式:Office PIA,文件流和NPOI开源库,本文只介绍前两种方式
收藏 0 赞 0 分享

C#串口通信程序实例详解

在.NET平台下创建C#串口通信程序,.NET 2.0提供了串口通信的功能,其命名空间是System.IO.Ports,创建C#串口通信程序的具体实现是如何的呢?让我们开始吧
收藏 0 赞 0 分享
查看更多