首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

QT :QString 的getOpenFileName 方法打开文件时路径时 汉字部分显示乱码解决方案

2012-03-17 
QT :QString 的getOpenFileName 方法打开文件时路径时 汉字部分显示乱码//openPath F:\\epub-book\\tes

QT :QString 的getOpenFileName 方法打开文件时路径时 汉字部分显示乱码
//openPath = "F:\\epub-book\\testData\\";
  QString filePath = QFileDialog::getOpenFileName(this, tr("Open File..."),
  openPath, tr("Epub File(*.epub)"));

我用getOpenFileName函数打开文件后,文件的中文部分显示是乱码?这个怎么解决啊?

急用,请哪位指点一下,谢谢了!

[解决办法]
QString filter;
filter = "Epub File(*.epub)";
QDir dir;
QString fileName = QFileDialog::getOpenFileName( this, 
tr("Open File..."), dir.absolutePath() , filter );

QByteArray ba = fileName.toLocal8Bit();
const char *c_str = ba.data();

c_str就是你要的路径了。。。
[解决办法]
不知道你是哪个操作系统,XP测试没问题。
QString filePath = QFileDialog::getOpenFileName(this, tr("Open File..."),
openPath, tr("Epub File(*.epub)"));
filepath里的中文显示正常。

热点排行