json-c array Sortieren



  • Hallo zusammen,

    ich möchte, meine JSON Inhalt in einer array nach einem Bestimmten Wert Sortieren lassen,
    nutze die Bibliothek json-c und es gib unter:

    https://github.com/rbtylee/tutorial-jsonc/blob/master/tutorial/sort.md

    ein Beispiel, für eine einfache Sortierung, meine JSON sieht aber so aus:

       [
           {
               "POS": 0,
               "ID": "2545327648",
               "UPDATE": 1755892547,
               "FILE_SIZE": "34428674",
               "IS_ACTIV": "false"
           },
           {
               "POS": 4,
               "ID": "1559212036",
               "UPDATE": 1745501111,
               "FILE_SIZE": "525685",
               "IS_ACTIV": "false"
           },
           {
               "POS": 2,
               "ID": "2796703209",
               "UPDATE": 1720644377,
               "FILE_SIZE": "1174863",
               "IS_ACTIV": "true"
           },
           {
               "POS": 1,
               "ID": "2291785308",
               "UPDATE": 1756819745,
               "FILE_SIZE": "51587989",
               "IS_ACTIV": "false"
           },
           {
               "POS": 3,
               "ID": "2116151222",
               "UPDATE": 1755866671,
               "FILE_SIZE": "122657596",
               "IS_ACTIV": "ture"
           }
       ]
    

    und möchte das ganze nach POS aufsteigend Sortieren lassen.

    Sorry habe aber absolut keinen Ansatzplan, wie ich das umsetzte.

    Gruß



  • Dafür benötigst du dann die Funktion json_object_object_get, um ein Unterelement (z.B. "POS") zu lesen.
    Rufe diese dann zuerst anstatt von json_object_get_int oder json_object_get_string (aus deinem gezeigten Link) auf und vergleiche dann dessen Werte (entsprechend des Datentyps).

    PS: In deinem letzten Element steht "IS_ACTIV": "ture" (anstatt "true";- )
    Und im englischen heißt es active (mit e).


Anmelden zum Antworten