如何获取boost json以使用正确的数据类型

乔尔斯

当我put_value使用int时,它会以字符串形式写入。有人知道如何将其打印为int吗?

#include <iostream>
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>

using boost::property_tree::ptree;
using namespace std;

int main(int argc, char* argv[]) {

    ptree node;
    node.put("string", "text here");
    node.put("int", 1);//outputs as "1" and should be 1
    write_json(cout, node, false);//{"string":"text here","int":"1"}

    return 0;
}
看到

该库显然不支持它。

Boost属性库尚未命名为“ Boost Json库”,因为它不是JSON库。相反,它是一个属性树库(恰好出于其目的而使用JSON子集)。

文档中

属性树数据集未键入,因此不支持数组。因此,使用以下JSON /属性树映射:

  • JSON对象被映射到节点。每个属性都是一个子节点。
  • JSON数组映射到节点。每个元素都是一个空名称的子节点。如果节点同时具有已命名和未命名的子节点,则无法将其映射到JSON表示形式。
  • JSON值映射到包含该值的节点。但是,所有类型的信息都会丢失。数字以及文字“ null”,“ true”和“ false”仅映射到其字符串形式。
  • 包含子节点和数据的属性树节点无法映射。

JSON往返,但类型信息丢失除外。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Haskell中获取函数以使用数据类型返回多个类型?

如何使用 PDO 更新具有正确数据类型的 json 列?

如何使用NHibernate正确映射未签名的数据类型

如何为错误的数据类型输入获取正确的异常?

使用aeson解析JSON以获取复合数据类型

如何确定Boost属性树使用的数据类型?

如何使用JDBC在mysql中读取JSON数据类型

如何在Sequelize中使用MySQL JSON数据类型

如何获取boost :: fusion :: map中值的类型?

我将如何编译Kiss_fft以使用double数据类型C ++?

Swift-如何从JSON获取数据类型

如何使用列获取数据类型并创建字典

如何使用模板获取向量中的数据类型?

使用pyspark获取列的数据类型

使用基于数据类型的获取内容

如何使用 Numba 将正确的数据类型传递给类?

非常大的数值的正确数据类型是什么以及如何使用它?

如何使用构造函数正确实现数据类型的实例 Eq?

如何使用参数转换为正确的数据类型。与SQL查询?

如何使用JSON数据类型将动态JSON数据插入MySql DB?

从视图中获取正确的列数据类型

如何正确包装归纳数据类型索引的数据类型?

如何使用MapStruct不同的数据类型?

如何使用数据类型包含功能

如何检查正在使用的数据类型?

如何使用LARAVEL中的where条件在SQL中检索Json数据类型数据

如何使用LARAVEL版本5.3以上的where条件在SQL中检索Json数据类型数据

如何让 Entityframework Core 设置正确的参数数据类型

如何为对象定义正确的数据类型