none
VB.Net: Integer in IPAddress konvertieren RRS feed

  • Frage

  • Hallo,

    ich möchte aus einem String eine IP erhalten. Ich habe mir das so überlegt (> bedeutet "wird konvertiert zu"):

    Eingabe(String) > Integer > IPAddress

    Leider weiß ich nicht, wie man Integer in IPAddress konvertiert.

    Danke im Voraus.


    Gruß, Bolzen

    Dienstag, 22. Januar 2013 18:14

Antworten

  • Hallo, eine IPv4 Adresse hat das Muster 0.0.0.0 wobei jede 0 für eine Zahl zwischen einschließlich 0 und 255 steht. Getrennt werden diese durch einen Punkt. Auslesen geht mit IPAddress.Parse().

    Um einen Integer aus der IP bzw. eine "richtige" IP aus einem integer zu bekommen, kannst du mal folgendes ansehen:
    http://stackoverflow.com/questions/461742/how-to-convert-an-ipv4-address-into-a-integer-in-c

    In VB.NET übersetzt sähe das in etwa so aus:

    Dim intAddress As Integer = BitConverter.ToInt32(IPAddress.Parse(address).GetAddressBytes(), 0)
    Dim ipAddress__1 As String = New IPAddress(BitConverter.GetBytes(intAddress)).ToString()


    Koopakiller [kuːpakɪllɐ] | Webseite | Code Beispiele | Facebook | Snippets

    • Als Antwort markiert Bolzen Mittwoch, 23. Januar 2013 16:46
    Dienstag, 22. Januar 2013 18:27
    Moderator
  • Hi,

    weil es das eben nicht gibt. In der Regel braucht das auch keiner. Aber was ist denn daran so schlimm, den Konstruktor oder die TryParse Methode zu verwenden?

    Aber für den Fall, dass Du unbedingt ganz ganz wirklich auf jeden Fall sowas haben willst, schreib dir einfach eine Erweiterungsmethode.

    <Extension()> _
    Public Function ToIpAddress( ByVal IpValue As Int64 ) As System.Net.IPAddress
    
    Dim Result As System.Net.IPAddress
    
        Result = New System.Net.IPAddress( IpValue )
    
        Return Result
    
    End Function
    

    Aufrufen kannst Du das dann bspw. so:

    Dim x As Int64 = 1
    Dim y As System.Net.IpAddress = x.ToIpAddress()
    


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    • Als Antwort markiert Bolzen Mittwoch, 23. Januar 2013 16:47
    Dienstag, 22. Januar 2013 20:05
    Moderator

Alle Antworten