Convertir la dirección IP en int, (es decir, inet aton en c #) [duplicar]

Posibles duplicados:
.NET Equivalant for INET_NTOA and INET_ATON
¿Cómo convertir una dirección IPv4 en un número entero en C #?

How do I perform the same unix function inet_aton in c#?

preguntado el 08 de enero de 11 a las 21:01

I guess 001 can't do anything himself. -

3 Respuestas

public int ToInteger(int A, int B, int C, int D)
{
    return Convert.ToInt32((A* Math.Pow(256, 3)) + (B* Math.Pow(256, 2)) + (C* 256) + D);
}

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

you can extend your own IP class like I did.

Respondido el 09 de enero de 11 a las 00:01

Echa un vistazo al sitio web de la IPAddress.Parse (or TryParse) methods of the IPAddress class.

Un ejemplo sería:

static int IPStringToInt(string ipAddress)
{
    IPAddress address = IPAddress.Parse(ipAddress);
    byte[] asBytes = address.GetAddressBytes();

    if(asBytes.Length != 4)
    {
        throw new ArgumentException("IP Address must be an IPv4 address");
    }

    return BitConverter.ToInt32(asBytes, 0);
}

You will need to take into account the host and network order of the bytes, but there's several static methods on the IPAddress class for handling that.

Respondido el 09 de enero de 11 a las 00:01

Prueba esta i think is the same question and it has an answer (enjoy)

contestado el 23 de mayo de 17 a las 12:05

This should be a vote to close. - Austin Salonen

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.