[英]Loss of non ascii characters from QString to char *
我有一个带有非ascii字符的QString。 我将此QString传递给另一个进程。 但是,当我调试接收过程时,argv参数未接收到来自源的正确字符串。 我的伪代码是
process.start( proc, QStringList() << "-a" <<param );
process.waitForFinished(m_timeout);
这里的param是包含非ascii文本的QString
我用以下代码解决了问题
LPWSTR *szArglist;
int argC;
szArglist = CommandLineToArgvW(GetCommandLineW(),&argC);
if(NULL==szArglist) {
throw;
}
QString qstrConvertFile = QString::fromUtf16((const ushort*)(szArglist[4]));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.