【发布时间】:2013-09-30 12:21:52
【问题描述】:
我从一个使用 UTF8 编码的 XML 文件中读取了一个字符串。我将此值存储在QString 对象中,并将其与其他一些信息连接起来。我可以在 QtCreator 调试器中看到 QString 持有所需的值。
我需要将此字符串传递给另一个采用const char * 参数的库。请问如何获取const char *?我试过toLocal8bit()、toLatin1()、toUtf8() 都没有运气。好像我错过了什么......
【问题讨论】:
-
@MinLin:那个线程是关于标准字符串的,not const char*.
-
@LaszloPapp 好吧,答案中的右值是 const char*,只是隐式转换为标准字符串的左值
-
@MinLin:std::string 和 QString 不应混合 IMO,因为它不是必需的。因此,这是一个不同的用例,所以是一个不同的问题。最好在不混合 std 的情况下通过 qt 类型。请参阅下面的答案。
-
@LaszloPapp 好吧,你的答案是正确的。我的意思是在那篇文章中虽然它想要一个标准字符串,但右侧是一个 const char*,我认为那篇文章的读者应该能够弄清楚。
标签: c++ qt qt-creator qstring qtcore