2017-11-23 5 views
0

내가 예상 XML 출력을 얻을 수 있어요 xml_writer_settings으로 XML 출력캐리지 리턴 문자열이 추가 된 문자열에 부스트 XML 요청을 만드는 방법은 없습니까?

<?xml version="1.0" encoding="utf-8"?> 
<Data><Name>XYZ</Name></Data> 

아래 얻을 수 있어요하지만 파일에 아래로 쓰기 필요 xml_writer_settings 기능없이 예상 XML 출력

<?xml version="1.0" encoding="utf-8"?> 
<Data> 
     <Name>XYZ</Name> 
</Data> 

그럼 내가 문자열로 변환 오전

boost::property_tree::ptree pt; 
    pt.put(Data.Name, method_name); 
    boost::property_tree::xml_writer_settings<char> settings('\t', 1); 
    write_xml("Data.xml", pt, std::locale(), settings); 

xml 데이터를 직접 얻을 수있는 다른 방법은 ptree에서 스트립 캐리지 리턴 문자열을 추가 했습니까?

+0

http://boostdoesnothaveanxmllibrary.com 저는 오늘 도메인을 구입하고 있습니다. 나는 클릭을 부자로 만들고있다. – sehe

답변

0

파일 대신 std::ostringstream에 쓰기 만하면됩니다.

std::string xml; 
{ 
    std::ostringstream oss; 
    write_xml(oss, pt, boost::property_tree::xml_writer_make_settings<std::string>(' ', 4)); 
    xml = oss.str(); 
}