在C#中将十六进制IP地址转换为点符号十进制

时间:2019-03-07 09:20:43

标签: c#

我有一个ip地址列,其中将其存储为varbinary(16),其值例如为:0x0A6D040D。我想将其转换为带点号的ip地址格式。我是c#的新手。请帮助我

1 个答案:

答案 0 :(得分:1)

获取IP地址作为字节数组。然后创建一个新的System.Net.IPAddress,以轻松地将其转换为点符号。

byte[] ipArray = { 0x0A, 0x6D, 0x04, 0x0D }; // fetch from DB as byte[]
System.Net.IPAddress ip = new System.Net.IPAddress(ipArray);
String ipStr = ip.ToString(); // your dot-notation as String.
Console.WriteLine(ipStr);     // Output: "10.109.4.13"

DotnetFiddle:https://dotnetfiddle.net/oAV3EF