Funktionen zum Lesen, Schreiben und Verarbeiten von JSON Objekten
Funktionen zum Lesen, Schreiben und Verarbeiten von JSON Objekten
static JSON json::alloc(char* jsonString = 0)
Allokiere ein neues JSON Objekt. Das Objekt muss mit json::release wieder freigegeben werden.
Name | Typ | Default | Beschreibung |
Return | JSON | JSON Objekt. Das Objekt muss mit json::release wieder freigegeben werden. 0 : Objekt konnte nicht allokiert werden oder Fehler beim Einlesen des (optionalen) JSON Strings |
|
jsonString | String oder char* | 0 | JSON String. Sofern angegeben, wird das JSON Objekt mit diesem String initialisiert. |
static JSON json::parse_object(char* jsonString)
Lese ein neues JSON Objekt aus einem gegebenen String ein. Funktion und Rückgabewert entsprechen genau der Funktion json::alloc mit obligatorischem Parameter jsonString
Name | Typ | Default | Beschreibung |
Return | JSON | JSON Objekt. Das Objekt muss mit json::release wieder freigegeben werden. 0 : Objekt konnte nicht allokiert werden oder Fehler beim Einlesen des JSON Strings. |
|
jsonString | String oder char* | - | JSON String. |
überprüfen, ob ein String ein JSON Objekt repräsentiert (also der JSON Syntax entspricht).
int main () { JSON test = json::parse_object ("{\"message\" : \"could be valid or not\", \"code\" : 123}");
if (test) { // valid json string, release json::release(test); } else { // ... }
return 0; }
static StringList json::parse_array(char* jsonString)
Anlegen ein neues JSON Objekt aus einem gegebenen einem JSON-Eingabestring.. Funktion und Rückgabewert entsprechen genau der Funktion json::alloc mit obligatorischem Parameter jsonString
Name | Typ | Default | Beschreibung |
Return | JSON | JSON Objekt. Das Objekt muss mit json::release wieder freigegeben werden. 0 : Objekt konnte nicht allokiert werden oder Fehler beim Einlesen des JSON Strings. |
|
jsonString | String oder char* | - | JSON String. |
static JSON json::read(char* path)
Allokiere ein neues JSON-Objekt aus einer JSON-Eingabedatei. Das Objekt muss mit json::release wieder freigegeben werden.
Name | Typ | Default | Beschreibung |
Return | JSON | JSON Objekt. Das Objekt muss mit json::release wieder freigegeben werden. 0 : Objekt konnte nicht allokiert werden oder Fehler beim Einlesen des JSON Strings. |
|
jsonString | String oder char* | - | Vollständiger Pfad einer JSON-Datei |
static int json::write(JSON json, char* path)
Schreibe ein JSON-Objekt in eine Ausgabedsatei.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
json | JSON | - | Gültiges JSON-Objekt |
path | String oder char* | - | Vollständiger Pfad der Ausgabedatei. Existiert die Datei bereits, wird sie überschrieben. Existiert ein Ordner gleichen Namens, wird der Fehler fnfErr zurückgegeben. |
static int json::release(JSON jsonObject)
Freigabe eines allokierten JSON-Objektes.
Es dürfen nur Objekte freigegeben werden, die mit json::alloc, json::parse_object, json::parse_array oder json::read allokiert wurden. JSON-Objekte aus Aufrufen von json::get_object dürfen nicht freigegeben werden! Diese Objekte werden von ihrem übergeordneten Objekt freigegeben.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
static int json::set_string(
JSON jsonObject,
char* property,
char* value)
Setze den Wert einer Eigenschaft eines JSON-Objektes. Der Wert wird als Zeichenkette übergeben.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
value | String oder char* | - | Neuer Wert der Eigenschaft gegeben als Zeichenkette |
static int json::set_int(
JSON jsonObject,
char* property,
int value)
Setze den Wert einer Eigenschaft eines JSON-Objektes. Der Wert wird als Ganzzahl übergeben.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
value | int | - | Neuer der Eigenschaft gegeben als Ganzzahl |
static int json::set_float(
JSON jsonObject,
char* property,
float value)
Setze den Wert einer Eigenschaft eines JSON-Objektes. Der Wert wird als Kommazahl gegeben.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
value | float | - | Neuer Wert der Eigenschaft gegeben als Kommazahl |
static int json::set_list(
JSON jsonObject,
char* property,
StringList value)
Setze den Wert einer Eigenschaft eines JSON-Objektes. Der Wert wird als Liste von Strings gegeben.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
value | StringList | - | Neuer Wert der Eigenschaft gegeben als Liste von Zeichenketten |
static int json::set_object(
JSON jsonObject,
char* property,
JSON value)
Einfügen eines JSON-Unterobjektes in ein JSON-Objekt.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
value | JSON | - | Gültiges JSON-Objekt als Unterobjekt des gegebenen Objektes |
static int json::set_error(
JSON jsonObject,
int errorCode,
char* errorClass = 0,
char* errorMessage = 0)
Setzen eines JSON-Fehlers.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
errorCode | int | - | Setze das Attribut errorCode des gegebenen JSON-Objektes |
errorClass | String oder char* | - | Setze das Attribut errorClass des gegebenen JSON-Objektes |
errorMessage | String oder char* | - | Setze das Attribut errorMessage des gegebenen JSON-Objektes |
static StringList json::get_attributes(JSON jsonObject)
Hole eine Liste aller Attributnamen eines JSON-Objektes.
Die erhaltene Liste der Attributnamen muß mit stringlist::release wieder freigegeben werden!
Name | Typ | Default | Beschreibung |
Return | StringList | Liste aller Attributnamen den JSON-Objektes. Die erhaltene Liste muß mit stringlist::release wieder freigegeben werden! | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
static int json::get_type(JSON jsonObject, char* property)
Ermittle des Datentyp eines JSON-Attributes.
Name | Typ | Default | Beschreibung |
Return | int | 0 : Kein Typ oder Fehler 1 : kInt 2 : kFloat 3 : kString 7 : kStringList 8 : kObject (JSON-Objekt) |
|
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
static char* json::get_string(JSON jsonObject, char* property)
Ermittle den Zeichenketten-Wert einer Eigenschaft eines JSON-Objektes.
Name | Typ | Default | Beschreibung |
Return | char* | Textwert des Attributes oder 0 Der Rückgabewert darf nicht verändert werden und wird bei folgenden Aufrufen der Funktion überschrieben. Hier finden Sie Informationen zu readonly-Rückgaben von Funktionen. |
|
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
static int json::get_int(JSON jsonObject, char* property)
Ermittle den Ganzzahlen-Wert einer Eigenschaft eines JSON-Objektes.
Name | Typ | Default | Beschreibung |
Return | int | Ganzzahlwert der Eigenschaft oder 0. Beachten Sie bitte, dass 0 sowohl Fehler als auch Wert sein kann. Überprüfen Sie in diesem Fall Existenz und Typo des Attributes! | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
static int json::get_float(JSON jsonObject, char* property)
Ermittle den Kommazahlen-Wert einer Eigenschaft eines JSON-Objektes.
Name | Typ | Default | Beschreibung |
Return | int | float-Wert der Eigenschaft oder 0. Beachten Sie bitte, dass 0.0 sowohl Fehler als auch Wert sein kann. Überprüfen Sie in diesem Fall Existenz und Typo des Attributes! | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
static StringList json::get_list(JSON jsonObject, char* property)
Ermittle die Werteliste eines JSON-Attributes.
Die erhaltene Liste der Werte muß mit stringlist::release wieder freigegeben werden!
Name | Typ | Default | Beschreibung |
Return | StringList | Werteliste des JSON-Attributes Die erhaltene Liste muß mit stringlist::release wieder freigegeben werden! | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name einer Eigenschaft innerhalb des JSON-Objektes |
static JSON json::get_object(JSON jsonObject, char* property)
Hole ein Unterobjekt eines JSON-Objektes.
Name | Typ | Default | Beschreibung |
Return | JSON | Unterobjekt des gesuchten Namens oder 0 | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
property | String oder char* | - | Gültiger Name des Unterobjekts des angegebenen JSON-Objekts |
static int json::get_error(
JSON jsonObject,
char* errorClass = 0,
char* errorMessage = 0)
Hole die im JSON-Objekt hinterlegte Fehlerbeschreibug.
Name | Typ | Default | Beschreibung |
Return | int | Fehler-Wert des Attributes errorCode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
errorClass | String oder char* | - | Allokierter Speicher für das Attribut errorClass des gegebenen JSON-Objektes |
errorMessage | String oder char* | - | Allokierter Speicher für das Attribut errorMessage des gegebenen JSON-Objektes |
static int json::serialize(JSON jsonObject, char* destination)
Exportiere ein gegebenes JSON in einen String.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
jsonObject | JSON | - | Gültiges JSON-Objekt |
destination | String oder char* | - | Allokierter Speicher für das Ergebnis. Da Sie die Länge nicht genau kennen empfiehlt es sich, als Ausgabe eine Varibale von Typ String zu verwenden! |
Alphabetic index HTML hierarchy of classes or Java