c++ - 来自 boost ptree 的 XML 版本和编码

标签 c++ boost boost-propertytree

我正在使用 boost ptree 来解析 xml

read_xml(stream, pt, trim_whitespace | no_comments);



<?xml version="1.0" encoding="windows-1252"?>
<rss>  
<channel>.....</channel> 
</rss>

如何读取xml的版本和编码: 我尝试了以下

std::string encoding =  pt.get<std::string>("<xmlattr>.encoding", "");

给出空字符串。 如何获取xml的版本和编码?

最佳答案

处理指令不是 XML 元素(事实上,它是……处理指令)。

处理指令在 <xmlattr> 中没有属性感觉。你会注意到没有对应的ptree节点。

这是一个未记录的方法来实现您可能想要的:Add xml-stylesheet processing instructions to boost property_tree

关于c++ - 来自 boost ptree 的 XML 版本和编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37188774/

相关文章:

c++ - 序列化boost数组

c++ - 尝试获取不存在的节点时如何不出现任何错误

c++ - 编写可以使用 std::vector 或 std::set 的模板

c++ - C++中的头文件

c++鼠标点击模拟代码

c++ - 绑定(bind) 1 次复制构造函数调用

c++ - 当函数未在默认返回路径上显式返回值时强制出错?

c++ - 使用 utf-32 解析器在 Boost.Spirit 中处理 utf-8

c++ - 打印 boost 属性树生成的 xml

c++ - 将具有 xml 属性的子树添加到 boost 属性树