簡體   English   中英

將IP地址轉換為字節數組C#

[英]Converting IP Address to an array of bytes C#

我正在嘗試基於IP地址和端口ping服務器,使用Ping類,我必須將IP地址轉換為字節數組,我該怎么做? 我從某個地方采用了這種方法

 bool IsConnectedToInternet
    {
        get
        {
            Uri url = new Uri("www.abhisheksur.com");
            string pingurl = string.Format("{0}", url.Host);
            string host = pingurl;
            bool result = false;
            Ping p = new Ping();
            try
            {

                PingReply reply = p.Send(host, 3000);
                if (reply.Status == IPStatus.Success)
                    return true;
            }
            catch { }
            return result;
        }
    }

我只需要根據IP而不是URL來ping服務器。 謝謝。

你能不能這樣做:

public static bool IsConnectedToInternet
{
    get
    {
        using (var ping = new Ping())
        {
            try
            {
                var reply = ping.Send("173.194.41.168", 3000);
                return reply.Status == IPStatus.Success;
            }
            catch
            {
                return false;
            }
        }
    }
}

雖然您的代碼段不需要它 ,但這里是您帖子標題中問題的答案:

您可以使用System.Net.Dns.GetHostAddresses("www.abhisheksur.com")獲取表示主機地址的IPAdresses對象數組。 然后,您可以在單個IPAddress對象上調用GetAddressBytes() ,將其轉換為字節數組。

嘗試使用Ping.Send的文檔

使用IPAddress類和Ping.Send(IPAddress地址)方法。 如果您嘗試從IPAddress轉換為字節,它提供方便的hosttonetwork和networktohost方法。

http://msdn.microsoft.com/en-us/library/system.net.ipaddress.aspx

http://msdn.microsoft.com/en-us/library/hb7xxkfx.aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM