写入 ini 文件值而不用 boost 覆盖整个 ini
Posted
技术标签:
【中文标题】写入 ini 文件值而不用 boost 覆盖整个 ini【英文标题】:Write ini file values without overwriting whole ini with boost 【发布时间】:2015-03-31 11:56:05 【问题描述】:我有写一段 ini 文件的函数:
boolean saveSSVar()
using boost::property_tree::ptree;
ptree pt;
pt.put(SRV_ID, ID);
pt.put(SRV_LOG_LEVEL, LogLevel);
write_ini( INI_FILE_NAME, pt );
return true;
问题是它覆盖了整个文件而不是一个部分。如何解决这个问题?
【问题讨论】:
【参考方案1】:只是
-
读入原始INI
更新
ptree
中的值
将结果树写入 INI
请注意,并非所有信息都会 100% 往返(请参阅 the documentation 了解限制)
另见:c++ boost library - writing to ini file without overwriting?
【讨论】:
【参考方案2】:最简单的方法是将 ptree 保持为全局或静态。
【讨论】:
以上是关于写入 ini 文件值而不用 boost 覆盖整个 ini的主要内容,如果未能解决你的问题,请参考以下文章