Unicode 字符再次引起了严重的头痛。这是我正在尝试做的事情:1)我正在将 Sqlite 表(包括 unicode 字符)导出到 xml 文件(效果很好并且 unicode 字符不会丢失)2)尝试再次导入这些 XML 表,因为它们已经被编辑- 工作正常,但 unicode 字符丢失。
这是读取 xml 文件的代码:
wstring input;
TiXmlElement* root = doc.FirstChildElement();
// count number of rows in xml file
TiXmlElement* counter = root->FirstChildElement();
int totalRows = 0;
while(counter != NULL) {
totalRows += 1;
counter = counter->NextSiblingElement();
}
// import data
wchar_t firstChar;
int check, length;
wstring finalInput;
TiXmlElement* rowElement = root->FirstChildElement();
for (int a = 1; a <= totalRows; a++) {
TiXmlElement* columnElement = rowElement->FirstChildElement();
// clear insert statement
insert = start;
for (int b = 1; b <= columns; b++) {
node = columnElement->FirstChild();
text = node->ToText();
// !!! here we have the problem data gets imported as a string !!!
input = text->Value();
问题是 Value(); (来自 tinyxml 文件的函数)返回 const char* 而不是 const wchar_t。我试图修改 TinyXml 文件以返回 wchar_t ,但这导致了一些令人讨厌的错误。
我现在的问题是:有谁知道如何使用 tinyxml 从 xml 文件中读取数据而不会丢失 unicode 字符?
在此先感谢您的帮助,一如既往地非常感谢。