Question

J'ai un objet JSON moyennement complexe, stocké sous forme de char *, que j'aimerais convertir en BSON pour le saisir dans mongodb en utilisant le "pilote" c (http://api.mongodb.org/c/0.4/bson.html).Bien que je puisse utiliser un analyseur JSON comme cJSON pour diviser l'objet en ses éléments et les ajouter individuellement à l'aide de commandes telles que bson_append_int( b, "count", 1001 );.Je pense que la conversion pourrait et devrait être plus simple que cela (car il n'y a ni perte ni gain dans la conversion), quelqu'un connaît-il une meilleure façon de procéder ?

Je pense que je cherche quelque chose de similaire au CPP BSONObj mongo::fromjson ( const string & str ) mais je ne trouve pas la fonction c pertinente dans la documentation.

Était-ce utile?

La solution

Je ne connais vraiment pas très bien le pilote C mais peut-être que ces deux fonctions pourraient aider :

bson_init_from_json
bson_new_from_json

Conversion de JSON en 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/libbson/current/json.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top