当前位置: 首页 > 知识库问答 >
问题:

如何将普通字符串转换为十六进制中的等效字节数组?[重复]

严宇
2023-03-14

我的问题是我怎样才能转化,

string s=“Hello World”

进入

字节b={0x48、0x65、0x6C、0x6C、0x6F、0x20、0x57、0x6F、0x72、0x6C、0x64}

如果在C#中有一个简单的方法。NET内核,这将是非常有帮助的。


共有2个答案

鲁华灿
2023-03-14

如果要为给定字符串指定字节数组,则必须指定字节数组表示字符串的方式。这就是所谓的编码和编码。NET framework有一个内置库(System.Text.Encoding),用于处理字符串编码操作。

例如,要获取ASCII表示形式的字符串,请使用以下命令:

byte[]bytes=编码。################################################################################################

当然,ASCII是一组非常有限的字符。

只需在这里探索您的选择:

微软NET文档:编码类

吕钧
2023-03-14

短语“十六进制字节数组”没有意义;字节是字节——它们没有任何内在格式,如十进制、十六进制、八进制:它们只是值。

但是,您想要的可能是:

byte[] bytes = Encoding.UTF8.GetBytes(s);

要获取十六进制,可以使用工具再次获取字符串,例如:

string hex = BitConverter.ToString(bytes);
 类似资料:
  • 将可变长度十六进制字符串(例如,转换为包含该数据的字节数组的最佳方式是什么。 即转换: 进入这个 还是这个 因此,当我将此写入一个文件并将其写入hexresp-C时,我将得到包含的二进制数据。

  • 我需要以十六进制表示形式将字符串转换为字节数组。例如: 值:06000002我需要的是: 如何做到这一点?

  • 问题内容: 我在ex中有整数。16,我正在尝试将此数字转换为十六进制数字。我试图通过使用十六进制函数来实现此目的,但是每当您向十六进制函数提供整数时,它都会返回十六进制数字的字符串表示形式, 有人可以告诉我如何将字符串格式的十六进制数字转换为简单的十六进制数字。 谢谢!! 问题答案:

  • 我有一个十六进制值字符串,我需要将其输出到一个char数组,以便可以将其用作函数输入。 请注意,sha512(firststring)的输出将是 810dcbf236457fee732f100d261c101412e04fc08abd4cb6ddd4442a7cb690acfcae6eeec25e321d5cf5d63174a3b38b31c0143a5702f5f28a43f38b1074285

  • 问题内容: 我编写了一个简单的程序,用于在Java中向串行端口发送和接收数据。我通过回送测试(Rx到Tx)连接串行端口设备。它工作正常。但我无法发送和接收十六进制数据到串行端口和接收串行端口。在我的设备中使用了FT232BL芯片,因此是否需要任何dll或其他库来将十六进制数据发送和接收到串行端口设备。我的代码如下。 问题答案: 十六进制: 十六进制为: