Domanda

Ho un oggetto JSON moderatamente complesso, memorizzato come char *, che vorrei convertire in BSON per inserirlo in mongodb utilizzando il C "driver" ( http://api.mongodb.org/c/0.4/bson.html ).Mentre posso usare un parser JSON come CJSON per dividere l'oggetto nei suoi elementi e aggiungerli individuali utilizzando comandi come bson_append_int( b, "count", 1001 );.Credo che la conversione possa e dovrebbe essere più semplice di quella (in quanto non vi è alcuna perdita o guadagno alla conversione), qualcuno sa di un modo migliore per farlo?

Penso che sto cercando qualcosa di simile al BSONObj mongo::fromjson ( const string & str ) di CPP ma non riesco a trovare la funzione CAVANT C nei documenti.

È stato utile?

Soluzione

Non sono davvero così familiare con il driver C ma forse queste due funzioni potrebbero aiutare:

bson_init_from_json
bson_new_from_json

Converting JSON su BSON

bson_t *b;
bson_error_t error;

b = bson_new_from_json ("{\"a\":1}", -1, &error);

if (!b) {
   printf ("Error: %s\n", error.message);
} else {
   bson_destroy (b);
}
.

http://mongoc.org/libbsson/current/json.html

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top