gpt4 book ai didi

c++ - 我传递采用 char* 的 tinyxml 函数的是什么 unicode 格式?

转载 作者:太空宇宙 更新时间:2023-11-04 12:10:47 24 4
gpt4 key购买 nike

当我调用一个带有 char* 的 tinyxml 函数时,我需要传递什么 unicode 格式?

TiXmlText *element_text = new TiXmlText(string);

原因是我正在使用一个 wxString 对象并且我可以给它很多不同的编码。如果我只执行 string.c_str(),wxstring 对象将查询当前语言环境的编码并创建该格式的 char* 字符串。或者,如果我执行 string.utf8_str(),它将传递一个 utf-8 字符串,但似乎 tinyxml 不会意识到它已经是 utf-8 编码,并将 utf-8 字符串重新编码为 utf-8(是的,结果是双 utf-8 编码)。所以当我写出来时,如果我将 Notepad++ 设置为显示 utf-8,我会看到:

baÄşlam 而不是 bağlam。

我想自己对 utf_8 (string.utf8_str()) 进行编码,而不是让 tinyxml 接触它并把它写出来。

我该怎么做? tinyxml期望在函数参数(上面代码中的构造函数)中传递什么格式?测试的答案不是 utf-8,尽管如果有意义的话它最终会把它写成 utf-8。

最佳答案

TinyXML 只支持 UTF-8 编码。因此,如果您想提供 ASCII 之外的字符,则必须以 UTF-8 提供。

关于c++ - 我传递采用 char* 的 tinyxml 函数的是什么 unicode 格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9952493/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com