我想将boost::property_tree::ptree
二进制文件写入文件,然后再次将其读入ptree
.
因为我对 ptree 和二进制写/读它们不太满意。我认为你们可以引导我走向正确的方向。
写入字符串,int/float/double 不是什么大问题,但是如何将整个 ptree(具有未知的键和值,所以它是通用的)存储到文件中并使用 if-/ofstream 在 cpp 中读回?
Filer 扩展名将是“*.tgasset”,并且文件将包含比 ptree 更多的数据。
为了让我更容易..这些是我写入/读取数据的虚拟函数:
void TGS_File::PTreeToFile(std::ofstream &_file, boost::property_tree::ptree _data) {
}
boost::property_tree::ptree TGS_File::PTreeFromFile(std::ifstream &_file) {
boost::property_tree::ptree _data;
return _data;
}
(以同样的方式使用字符串、整数、浮点数和双精度数)