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!

Anbindung für libjson-glib

Downloads » Bibliotheken

Download

Screenshot

Screenshot
Vergrößern
Bild vergrößern

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 Externer Link!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 Externer Link!forum thread.