前文刚讲述过boost的porperty_tree在JSON上的一些问题,最近使用又发现一些问题,可能大家都可能发现了,就是用该库来生成JSON的时候,不支持数字等非字符串类型的值。
问题描述
如果在使用boost解析JSON可能感觉不到,如果在生成的时候,如下
boost::property_tree::ptree root; |
这样生成的JSON会是这样
{ "key": "0" } |
确实和我们想象的不一样,很多时候这种生成结果将会导致后续无法使用。
如何解决
我搜索了一些方法,感觉并不是太可取,建议还是替换使用其他库。
一些可参考的解决方法,供参考,或者参考借鉴或者在此基础上改进