将IP字符串转换为十六进制的unicode字符值列表

时间:2012-08-02 00:37:30

标签: c# unicode ip hex ip-address

有没有办法将IP地址字符串转换为十六进制字符串(包括点),然后返回转换后的十六进制值!

"10.10.10.11"hex(7):31,00,30,00,2e,00,31,00,30,00,2e,00,31,00,30,00,2e,00,31,00,00,00,00,00

干杯!

2 个答案:

答案 0 :(得分:2)

阅读你的问题,我知道你真的想要将IP地址字符串转换为它的unicode表示,然后你要从中生成一个以逗号分隔的底层字节列表(以十六进制编码)。

这样可以解决问题:

string.Join(",", Encoding.Unicode.GetBytes("10.10.10.11").Select(x => x.ToString("X2")))

输出:

31,00,30,00,2E,00,31,00,30,00,2E,00,31,00,30,00,2E,00,31,00,31,00

答案 1 :(得分:1)

使用System.Net.IPAddress类,然后你应该可以将它作为一个字节数组来获取。

var address = System.Net.IPAddress.Parse("10.10.10.11");
var bytes = address.GetAddressBytes();