请问如何将string转化为baisc_istream 流
void read_xml(basic_istream &,Ptree &pt)
我想要调用这个函数。其中一个参数是basic_istream &,
我想把string转换为这个类型的,这个应该怎么搞啊
[解决办法]
可以用istringstream读入string的值,然后传给basic_istream
[解决办法]
看了#1,感觉我理解错了,如果你是要直接解析xml字符串,可以这样:
int main()
{
try
{
using namespace boost::property_tree;
string test_str = "<root>haha</root>";
stringstream ss(test_str);
ptree pt;
read_xml(ss, pt);
ptree& root = pt.front().second;
cout << root.data() << endl; // 输出haha
}
catch (std::exception& e)
{
cerr << e.what() << endl;
}
return 0;
}