字符串到字节的十六进制转换

时间:2018-09-03 07:44:17

标签: c# c#-4.0

我想问一个关于从Windows窗体将字符串转换为字节的问题,我已经尝试了几种方法来完成这些操作,虽然将字符串转换为16进制可以成功转换为字符串,但是我需要将其转换为16进制字节的问题因为API仅获取字节。

这是下面的转换:

string getTxtString = txtString.text;
int convertToInt = int32.Parse(getTxtString);
string hexString = convertToInt.toString("X"); 

//我尝试使用X2,它将获得两位数,例如0A

在这种情况下如何转换为十六进制字节,或者请提供其他解决方案。

例如: 11 = 0A

0A是下面的转换:

 int convertToInt = int32.Parse(getTxtString);
 string hexString = convertToInt.toString("X2");

从上面的转换中只能得到0A。 Api需要完整的 Hex 值,例如0x0A,我需要向API发送0x0A。

1 个答案:

答案 0 :(得分:0)

在提供<AceEditor readOnly value={code || ''} mode="javascript" name="UNIQUE_ID_OF_DIV" editorProps={{ $blockScrolling: true }} theme="github" showError={false} width='auto' height={height} annotations={null} /> 时尝试Convert.ToByte(在您的情况下为fromBase

16

如果您实际上已经编码了 // "0A" (string) -> 0x0A == 10 == 0b00001010 (byte) byte result = Convert.ToByte(hexString, 16); ... SomeApiMethod(..., result, ...); (例如Int32),并且想要获取最后一个字节

"FF120A"

请注意, // "FF120A" (or "0xFF120A") -> 0xFF120A (int) -> 0x0A (byte) // unchecked - we don't want OverflowException on integer overflow byte result = unchecked((byte)Convert.ToInt32(hexString, 16)); ... SomeApiMethod(..., result, ...); (例如byte)始终相同,它的字符串表示形式可以变化

0x0A