Anbindung für libjson-glib
Download
- Quelltext (30 kB)
- LGPL
- Plattformen:
- FreeBASIC 0.24.0
- Quelltext enthalten
- Angelegt von TJF am 19.01.2013
Bewertung
Punkte: 5,0 bei 1 Stimmen(Zum Abstimmen auf die Sterne klicken.)
JSON (JavaScript Object Notation) ist ein schlankes Datenaustauschformat, das für Menschen einfach zu lesen und zu schreiben, und für Maschinen einfach zu parsen (Analysieren von Datenstrukturen) und zu generieren ist. Es basierd auf einer Untermenge der JavaScript Programmiersprache, Standard ECMA-262 dritte Edition - Dezember 1999.
Bei JSON handelt es sich um ein Textformat, das komplett unabhängig von Programmiersprachen ist, aber vielen Konventionen folgt, die Programmierern aus der Familie der C-basierten Sprachen (inklusive C, C++, C#, Java, JavaScript, Perl, Python und vielen anderen) bekannt sind. Diese Eigenschaften machen JSON zum idealen Format für den Datenaustausch.
Weitere Informationen zu dem Datenformat sind auf der JSON Webseite (de) zusammengestellt.
Die gegenständliche Bibliothek verbindet die JSON Funktionalität mit GLib Objekten, so dass ein GLib Object direkt aus einem Datenstrom erzeugt bzw. ein Datenstrom direkt aus einem GLib Objekt generiert werden kann.
Beispiel:
#INCLUDE "json-glib.bi"
g_type_init()
'' create parser
VAR pars = json_parser_new()
'' create pointer for error messages (if any)
DIM AS GError PTR errr
'' some input to test (whitespaces should get removed in output)
VAR t = "{""name"":[[[1,2,3,4],5, 6],7, 8]}"
'var t = "[{""hello"":""hello""}]"
'var t = "[{""hello"":1},{ ""foo"":""what_foo""}] "
'' parse the stream (+ output error if any)
?json_parser_load_from_data(pars, t, LEN(t), @errr)
IF errr THEN ?*errr->message
'' get the root node
VAR node = json_parser_get_root(pars)
'' create generator, set root
VAR gen = json_generator_new()
json_generator_set_root(gen, node)
'' generate output (should be equal to input)
?*json_generator_to_data(gen, 0)
'' free memory
g_object_unref(gen)
g_object_unref(pars)
English
See english forum thread.