Unicode C
Unicode C
Firebase JSON Put and Patch
See more JSON Examples
Demonstrates how to apply Firebase put and patch events to a JSON database.Chilkat Unicode C Downloads
#include <C_CkJsonObjectW.h>
void ChilkatSample(void)
{
const wchar_t *json1;
HCkJsonObjectW json;
json1 = L"{\"a\": 1, \"b\": 2}";
json = CkJsonObjectW_Create();
// Use Firebase delimiters for JSON paths.
CkJsonObjectW_putDelimiterChar(json,L"/");
CkJsonObjectW_Load(json,json1);
CkJsonObjectW_FirebasePut(json,L"/c",L"{\"foo\": true, \"bar\": false}");
// Output should be: {"a":1,"b":2,"c":{"foo":true,"bar":false}}
wprintf(L"1) %s\n",CkJsonObjectW_emit(json));
CkJsonObjectW_FirebasePut(json,L"/c",L"\"hello world\"");
// Output should be: {"a":1,"b":2,"c":"hello world"}
wprintf(L"2) %s\n",CkJsonObjectW_emit(json));
CkJsonObjectW_FirebasePut(json,L"/c",L"{\"foo\": \"abc\", \"bar\": 123}");
// Output should be: {"a":1,"b":2,"c":{"foo":"abc","bar":123}}
wprintf(L"3) %s\n",CkJsonObjectW_emit(json));
// Back to the original..
CkJsonObjectW_FirebasePut(json,L"/",L"{\"a\": 1, \"b\": 2}");
wprintf(L"4) %s\n",CkJsonObjectW_emit(json));
CkJsonObjectW_FirebasePut(json,L"/c",L"{\"foo\": true, \"bar\": false}");
CkJsonObjectW_FirebasePatch(json,L"/c",L"{\"foo\": 3, \"baz\": 4}");
// Output should be: {"a":1,"b":2,"c":{"foo":3,"bar":false,"baz":4}}
wprintf(L"5) %s\n",CkJsonObjectW_emit(json));
CkJsonObjectW_FirebasePatch(json,L"/c",L"{\"foo\": \"abc123\", \"baz\": {\"foo\": true, \"bar\": false}, \"bax\": {\"foo\": 200, \"bar\": 400} }");
// Output should be: {"a":1,"b":2,"c":{"foo":"abc123","bar":false,"baz":{"foo":true,"bar":false},"bax":{"foo":200,"bar":400}}}
wprintf(L"6) %s\n",CkJsonObjectW_emit(json));
CkJsonObjectW_Dispose(json);
}