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

C# 将IP字符串转换为十六进制的unicode字符值列表,c#,unicode,ip,hex,ip-address,C#,Unicode,Ip,Hex,Ip Address,有没有办法将IP地址字符串转换为十六进制字符串(包括点),然后返回转换后的十六进制值 “10.10.10.11”至十六进制(7):31,00,30,00,2e,00,31,00,00,2e,00,31,00,30,00,2e,00,31,00,00,00,00,00 干杯 使用System.Net.IPAddress类,那么您应该能够将其作为字节数组获取 var address = System.Net.IPAddress.Parse("10.10.10.11"); var bytes = ad

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

“10.10.10.11”
十六进制(7):31,00,30,00,2e,00,31,00,00,2e,00,31,00,30,00,2e,00,31,00,00,00,00,00


干杯

使用
System.Net.IPAddress
类,那么您应该能够将其作为字节数组获取

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

使用
System.Net.IPAddress
类,您应该能够将其作为字节数组获取

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

阅读您的问题,我知道您实际上希望将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

阅读您的问题,我知道您实际上希望将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

忽略标题和解决问题的额外学分。我有错误吗?System.Array“”不包含“Select”的定义,并且找不到接受类型为“System.Array”的第一个参数的扩展方法“Select”!我必须在参考中添加什么?您需要使用System.Linq添加
!忽略标题和解决问题的额外学分。我有错误吗?System.Array“”不包含“Select”的定义,并且找不到接受类型为“System.Array”的第一个参数的扩展方法“Select”!我必须在参考中添加什么?您需要使用System.Linq添加