| Habe mal eine .csv Datei (42702 Einträge) zu einerMEGA - .json - Datei konvertiert.
 Mit diesem kleinen Programm kann man die Einträge
 des jeweiliges Bezirks lesen. Mit einem Klick auf die
 Listbox mit den Bezirken werden in der Gridbox
 die entsprechenden Bundesstaaten mit dem Zipcode
 angezeigt.
 
 Declare String datei, bezirke, spalten, item
Declare Handle btn1, grid, lb
Declare Long ende, js ,xs
bezirke = "NH,NY,PR,VI,MA,RI,ME,VT,CT,NJ,AE,PA,DE,DC,VA,MD,WV,NC,SC,\
GA,FL,AA,AL,TN,MS,KY,OH,IN,MI,IA,WI,MN,SD,ND,MT,IL,MO,KS,NE,LA,AR,OK,\
TX,CO,WY,ID,UT,AZ,NM,NV,CA,AP,HI,AS,GU,PW,FM,MP,MH,OR,WA,AK"
spalten = "Bezirk;0;60;Bundes-Staat;0;120;Zip-Code;0;100"
ende = 0
datei = "F:\ZipCodes.Json"' ***************** PFAD ANPASSEN ***************************
WindowTitle "US-ZipCodes (Postleitzahlen) USA"
Window 600, 400
btn1 = Create("Button",  %HWnd, "Ende", 10, 10, 60, 25)
grid = Create("GridBox", %HWnd, spalten, 0, 10, 50, 300, 200)
Create("Text", %HWnd, "vorhandene Bezirke", 400, 25, 140, 25)
lb   = Create("Listbox", %HWnd, 1, 400, 50, 60, 200)
InitListbox()
If FileExists(datei)
    js = Create("Json", datei)
Else
    MessageBox("Keine Datei ZipCodes.Json vorhanden", "Fehler", 0)
    End
EndIf
WhileNot ende
    WaitInput
    If Clicked(btn1)
        ende = 1
    ElseIf Clicked(lb)
        item = GetString$(lb, GetCurSel(lb))
        If item <> ""
            Suchen(item)
        EndIf
    EndIf
EndWhile
Proc InitListbox
    ClearList
    Move("StrToList", bezirke, ",")
    Move("ListToHandle", lb)
EndProc
Proc Suchen
    Parameters String item
    Declare Hash eintrag[], String Schluessel, Wert, Long i
    WhileLoop 0, Json("Count", js) - 1
        If Json("Name", js, &LOOP) = item
            xs = Json("GetObject", js, item)
            eintrag[] = Json("Hash", xs)
            ClearList grid
            ForEach eintrag[], Schluessel, Wert
            AddString(grid, item + "|" + Wert + "|" + Schluessel)
            EndFor
            Break
        EndIf
    EndWhile
EndProc
End
Ist ja erstaunlich, wie schnell JSON da ist.
 Bitte Dateipfad entsprechend ändern.
 |