我正在尝试在Qt中打开一个文件。我在这个函数中使用了双反斜杠
doc->dynamicCall("Open(QVariant)", "E:\\QT\\build-untitled-Desktop_Qt_5_7_0_MSVC2015_64bit-Debug\\My Question.doc")
它有效。但是,我的目录变量的绝对路径返回此值,它具有正斜杠:
"E:/QT/build-untitled-Desktop_Qt_5_7_0_MSVC2015_64bit-Debug/My Question.doc"
并且它不起作用。错误说:“抱歉,我们找不到您的文件。它是否可能被移动,重命名或删除?”我尝试了所有东西,它只适用于双反斜杠。
我知道我必须将\
转义为\\
,但如何使用我的变量编写此函数?
答案 0 :(得分:0)
我认为toNativeSeparators
功能可能会对您有所帮助。由于您在Windows上,它会将正斜杠替换为反斜杠。
代码就是这样:
string path = "E:/QT/build-untitled-Desktop_Qt_5_7_0_MSVC2015_64bit-Debug/My Question.doc";
doc->dynamicCall("Open(QVariant)", QDir::toNativeSeparators(path));