Saltar al contenido

Crear json vacío array con jsoncpp

Si encuentras alguna incompatibilidad con tu código o proyecto, recuerda probar siempre en un ambiente de testing antes añadir el código al trabajo final.

Solución:

Aquí hay dos maneras en que puede hacerlo:

jsonRootValue["emptyArray"] = Json::Value(Json::arrayValue);
// or 
jsonRootValue["emptyArray"] = Json::arrayValue;

Puede hacer esto definiendo el objeto de valor como un “objeto de matriz” (de forma predeterminada, lo convierte en un objeto de “objeto”, por lo que su miembro se convierte en “null” cuando no se ha realizado ninguna asignación, en lugar de [] )

Entonces, cambie esta línea:

 Json::Value jsonValue;
 myMethod(jsonValue);

con este:

Json::Value jsonValue(Json::arrayValue);
myMethod(jsonValue);

¡Y voilá! Tenga en cuenta que puede cambiar “arrayValue” a cualquier tipo que desee (objeto, string, array, int etc.) para hacer un objeto de ese tipo. Como dije antes, el predeterminado es “objeto”.

Bien, lo tengo. Es un poco molesto pero es bastante fácil después de todo. Para crear un json vacío array con jsoncpp:

Json::Value jsonArray;
jsonArray.append(Json::Value::null);
jsonArray.clear();
jsonRootValue["emptyArray"] = jsonArray;

La salida a través del escritor será:

 "emptyArray" = []          

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *