使用qt-mingw版做的软件,发给客户以后说工作不正常,配置文件无法打开,或者加载数据文件不正常。远程查看以后,发现客户经常将程序放置在中文带空格的路径下,导致文件打开不正常。所以最近想在程序上解决一下,让客户少出问题。
首先在网上查了QT打开文件路径中含有中文和空格问题,抄了如下代码:(https://blog.csdn.net/m0_37906001/article/details/76672634)
1 QString fileName=QFileDialog::getOpenFileName(this,tr("Open Image"),".",tr("Image Files(*.png *.jpg *jpeg *.bmp *.avi *.mp4)")); 2 3 QTextCodec *code = QTextCodec::codecForName("GB2312");//解决中文路径问题 4 std::string name = code->fromUnicode(fileName).data(); 5 6 if<

在使用Qt-mingw开发的软件中遇到客户将程序放在中文带空格路径下导致文件打开异常的问题。尝试了网络上的解决代码但未成功,问题在于QString默认以Latin-1转码。最终通过使用std::string并直接使用fopen函数支持带空格的文件名解决了问题。
1569

被折叠的 条评论
为什么被折叠?



