【发布时间】:2012-07-30 22:55:29
【问题描述】:
有什么方法可以将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
干杯!
【问题讨论】:
标签: 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
干杯!
【问题讨论】:
标签: c# unicode ip hex ip-address
阅读您的问题后,我了解到您实际上想要将 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
【讨论】:
using System.Linq!
使用System.Net.IPAddress 类,那么您应该能够将其作为字节数组获取。
var address = System.Net.IPAddress.Parse("10.10.10.11");
var bytes = address.GetAddressBytes();
【讨论】: