- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
文档并没有真正说明。
我知道我可以将它交给它一个 ifstream,这样我就可以检查以确保它是打开的,所以这种情况大部分都得到了处理。
但是当执行 boost::property_tree::ini_parser::read_ini(ifstream_object,property_tree_object);
如何检测文件格式是否错误?我有什么方法可以获取诊断信息,例如哪里解析失败?
最佳答案
只捕获异常。基本 PropertyTree 异常类是 boost::property_tree::ptree_error
源自 std::runtime_error
,它有两个后代:ptree_bad_data
和 ptree_bad_path
.
示例:
#include <boost/property_tree/ini_parser.hpp>
#include <boost/property_tree/ptree.hpp>
#include <iostream>
#include <sstream>
int main()
{
using namespace std;
using namespace boost;
using namespace property_tree;
stringstream ss;
ss << "good = value" << endl;
ss << "bad something" << endl;
try
{
ptree root;
read_ini(ss, root);
}
catch(const ptree_error &e)
{
cout << e.what() << endl;
}
}
输出是:
<unspecified file>(2): '=' character not found in line
关于c++ - 如何检测 Boost.PropertyTree 的解析/读取失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13679820/
遍历空的 Boost.PropertyTree 的子节点通常是空操作: ptree empty; for (auto const& elements : empty) { std::cout
假设我有这种 XML 格式: dostuff(); 如何使用 Boost.PropertyTree 读取属性? 最佳答案 如果xml有这样的内容: mode xxx 使
我有一些 boost::property_tree::ptree .我需要删除一些具有特定标签名称的元素的树。例如,源的 xml ptree是以下内容: 10 v
Boost 有 tutorial on how to load XML from a file .如何使用我在代码中创建或从用户接收的字符串(例如使用 cin)提供它? 最佳答案 这里有一些适合我的代
我正在使用 boots 的 property_tree 库。我正在寻找一种从 ptree 获取子节点的方法对象,但返回一个空 ptree如果失败。我在 property_tree/examples/e
所以有这样的 json: { "config": { "name": "myconfig", "servecies": { "module": [ "f
文档并没有真正说明。 我知道我可以将它交给它一个 ifstream,这样我就可以检查以确保它是打开的,所以这种情况大部分都得到了处理。 但是当执行 boost::property_tree::ini_
我正在尝试编写一个 XML 解析器,将 XML 文件解析为 boost::property_tree 并遇到了这个问题。如何(快速)检查某个属性的子对象是否存在? 显然我可以使用 BOOST_FORE
我有下面显示的 JSON 文件。 { "instruments": [ { "minShift": -1.0, // opcjonalnie - jeśli brak,
有填充boost::property_tree::ptree的例子 boost::property_tree::ptree pt; pt.put("one", "value1"); pt.put("o
如果能够将路径指定到包含数组的 Boost.PropertyTree 中,那就太好了。 我可以从这个 JSON 构造一个 Boost.PropertyTree: const char* theJSON
我一直在寻找在 C++ 中存储程序设置或选项或配置的解决方案。这些可能是在 GUI 中公开的设置,需要在我的代码运行之间保存。 在我的搜索中,我遇到了 boost.PropertyTree这似乎是一个
我想在 C++ 中序列化分层数据结构。我正在处理的项目使用 boost,所以我使用 boost::property_tree::ptree 作为我的数据节点结构。 我们有像 Person 这样的高级结
我是一名优秀的程序员,十分优秀!