替换QFile文件名中的单引号

时间:2013-05-10 09:26:53

标签: c++ file qt

我想打开一个包含单引号但我无法打开它的文件。

文件名示例: QFile file("my'file.example")

我尝试使用file.fileName().replace("\'", "\\\'"),但结果相同。

1 个答案:

答案 0 :(得分:0)

您正在尝试替换"\'",但它不在原始字符串上,因此无效。此外,QFile::filename返回filename属性的副本,并且将在副本上进行任何修改(如replace)。要使用文件名(在打开之前),请使用

file.setFilename(file.fileName().myModificationOperation())

您是否尝试过QFile file("my\'file.example")

测试你的参数使用静态调用:

QString filename = "my\'file.example";
bool okay = QFile::exists(filename);