最經項目中使用到了boost property_tree,卻在中文問題上遇到大問題。編碼
直接使用ptree讀寫存儲於窄字符(如string)類型的中文字符串時,程序能夠運行,但因爲XML默認使用UTF-8字符集,在xml文件中的中文字符不可讀。spa
爲了解決這個問題,有兩個辦法code
一、使用wptree和wstring方式配合,這種方式網上能夠查到。xml
二、直接改變xml存儲時的編碼,如使用gb2312blog
xml_writer_settings<char> ss('*' ,0,"gb2312"); write_xml(path, m_tree, std::locale(), ss);