Reputation: 65
How to append [ and ] to json objects in c programming....
i have something like
json_builder_begin_object(builder);
json_builder_set_member_name( builder, "response" );
json_builder_add_string_value( builder, "success" );
json_builder_set_member_name( builder, "data" );
json_builder_begin_object( builder );
json_builder_set_member_name( builder, "type" );
json_builder_add_string_value( builder, "vehicle " );
json_builder_set_member_name( builder, "value" );
json_builder_add_string_value( builder, ">10lakhs " );
json_builder_set_member_name(builder,"color");
json_builder_add_string_value(builder,"Black");
I need the response like
[{"response":"success"},"data"[{"type":"vehicle"},{"value":">10lakhs"},{"color":"black"}]]
-Thanks in advance.. :) :)
Upvotes: 0
Views: 230
Reputation: 663
You have to use the set_member_name and begin_object. The former sets the name of the subobject, and the latter inits the subobject so the rest of data goes inside it.
For example, from my Countly app:
json_builder_begin_object (builder);
if(crash->hardware){
json_builder_set_member_name (builder, "hardware");
json_builder_begin_object(builder);
if(crash->hardware->os){
json_builder_set_member_name (builder, "_os");
json_builder_add_string_value (builder, crash->hardware->os);
}
if(crash->hardware->os_version) {
json_builder_set_member_name (builder, "_os_version");
json_builder_add_string_value (builder, crash->hardware->os_version);
}
if(crash->hardware->manufacture) {
json_builder_set_member_name (builder, "_manufacture");
json_builder_add_string_value (builder, crash->hardware->manufacture);
}
if(crash->hardware->device) {
json_builder_set_member_name (builder, "_device");
json_builder_add_string_value (builder, crash->hardware->device);
}
if(crash->hardware->resolution) {
json_builder_set_member_name (builder, "_resolution");
json_builder_add_string_value (builder, crash->hardware->resolution);
}
if(crash->hardware->app_version) {
json_builder_set_member_name (builder, "_app_version");
json_builder_add_string_value (builder, crash->hardware->app_version);
}
if(crash->hardware->cpu) {
json_builder_set_member_name (builder, "_cpu");
json_builder_add_string_value (builder, crash->hardware->cpu);
}
if(crash->hardware->opengl) {
json_builder_set_member_name (builder, "_opengl");
json_builder_add_string_value (builder, crash->hardware->opengl);
}
json_builder_end_object (builder);
}
Upvotes: 1