我正在使用QImage.load()
在我的程序中加载图像,但它仅在文件名不包含任何空格时才有效(例如:"/Users/Emile/Dropbox/crookedStall cover.jpg"
)。由于我希望用户能够从他们的计算机中选择任何图像,这是一个问题。
所选图像的文件名由函数返回,存储在QString中。我已经尝试使用QString.replace()
以反斜杠来逃避空格,但这似乎不起作用。显然,简单地删除空格也不起作用。
我看了一下,没有找到任何有效的解决方案。 如何加载包含空格的文件名的图像?谢谢!
答案 0 :(得分:0)
这对我来说很好用:
这只是使用QFileDialog :: getOpenFileNames来定位文件
QString filter = QString("Supported Files (*.shp *.kml *.jpg *.png );;All files (*)");
QStringList fileNames = QFileDialog::getOpenFileNames(this, tr("Select File(s)"), QDir::homePath(), filter);
for(int idx =0; idx < fileNames.size(); ++idx)
{
QImage image ;
bool success = image.load(fileNames.at(i));
qDebug() << "File loaded succesfully " << success ;
}