【发布时间】:2013-06-11 08:08:47
【问题描述】:
我有一个类似的 INI 文件
[Section1]
Value1 = /home/%USER%/Desktop
Value2 = /home/%USER%/%SOME_ENV%/Test
并希望使用 Boost 对其进行解析。我尝试使用 Boost property_tree 之类的
boost::property_tree::ptree pt;
boost::property_tree::ini_parser::read_ini("config.ini", pt);
std::cout << pt.get<std::string>("Section1.Value1") << std::endl;
std::cout << pt.get<std::string>("Section1.Value2") << std::endl;
但它没有扩展环境变量。输出看起来像
/home/%USER%/Desktop
/home/%USER%/%SOME_ENV%/Test
我期待类似的东西
/home/Maverick/Desktop
/home/Maverick/Doc/Test
我不确定是否可以使用 boost property_tree。
如果有任何提示使用 boost 解析此类文件,我将不胜感激。
【问题讨论】:
-
解析Inifiles,我之前也有a very full-featured Inifile parser written using boost-spirit,不过我觉得还是推荐boost-propertytree为I have before,其实和这个问题无关。
-
@Maverick:请接受答案或说明为什么这些不符合您的需求。
标签: c++ boost ini boost-propertytree