Buchempfehlung
Windows System Programming
Windows System Programming
Das Kompendium liefert viele interessante Informationen zur Windows-Programmierung auf Englisch. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Code-Beispiel

Code-Beispiele » Internet und Netzwerke

URLEncode und URLDecode - Ganz nach Spezifikation

Lizenz:Erster Autor:Letzte Bearbeitung:
GPLRedakteurJojo 08.10.2008

Hier zwei Codes, die URLs ganz nach der Spezifikation codieren und decodieren. Dieser Code basiert auf einen Externer Link!Code von freevbcode.com. Es ist möglich, ein Leerzeichen als %20 (Hexcode) oder + zu übergeben. Wir URLEncode mit dem zweiten Parameter ungleich null aufgerufen, wird ein + benutzt.

Function URLEncode(sStringToEncode As String, bUsePlus As Byte = 0) As String
    Dim sNewString As String, bChar As UByte
    For i As Integer = 1 To Len(sStringToEncode)
        bChar = sStringToEncode[i - 1]
        Select Case bChar
            Case 48 To 57, 65 To 90, 97 To 122
                sNewString &= Chr(bChar)
            Case 32
                sNewString &= *IIf(bUsePlus, @"+", @"%20")
            Case Else
                sNewString &= "%" & *IIf(bChar < 16, @"0", @"") & Hex(bChar)
        End Select
    Next

    Return sNewString
End Function

Function URLDecode(sStringToDecode As String) As String
    Dim sNewString As String, i As Integer = 0

    Do Until i = Len(sStringToDecode)
        Select Case sStringToDecode[i]
            Case Asc("+")
                sNewString &= " "
            Case Asc("%")
                sNewString &= Chr(Val("&h" & Mid(sStringToDecode, i + 2, 2)))
                i+=2
            Case Else
                sNewString &= Chr(sStringToDecode[i])
        End Select
        i+=1
    Loop

    Return sNewString
End Function

Zusätzliche Informationen und Funktionen
  • Das Code-Beispiel wurde am 08.10.2008 von RedakteurJojo angelegt.
  • Die aktuellste Version wurde am 08.10.2008 von RedakteurJojo gespeichert.
  Bearbeiten Bearbeiten  

  Versionen Versionen