路径中斜杠与反斜杠的转化?

时间:2021-10-16 14:46:01
如路径C:/testA\\testB\testC.txt
我想把字符串中的“\\”和“\”都变成“/”,该怎么实现?

我先抛砖引玉啦

QString path = "C:/testA\\testB\testC.txt";
QString tmpPath;
if(path.contains("\\"))
{
    tmpPath = path.replace("\\","/",Qt::CaseInsensitive);
}
if(tmpPath .contains("\"))
{
    tmpPath = tmpPath .replace("\","/",Qt::CaseInsensitive);
}

但是报错:error C2001: newline in constant

8 个解决方案

#1


一个\ 表示转义的,\\才表示一个\,\\\\才表示\\

#2


引用 1 楼  的回复:
一个\ 表示转义的,\\才表示一个\,\\\\才表示\\


那我如何才能替换掉'\'字符呢?

#3


引用 1 楼  的回复:
一个\ 表示转义的,\\才表示一个\,\\\\才表示\\


tmpPath = path.replace("\\","/",Qt::CaseInsensitive);操作后
字符串中的\\变成了/,但是原来字符串中的\,也找不到了,取而代之的是一个空格的东西

#4


也就是说,将
QString path = "C:/testA\\testB\testC.txt";

改成
QString path = "C:/testA\\\\testB\\testC.txt";

#5


QDir::toNativeSeparators
这个问题我记得曾经有说过

#6


引用 4 楼  的回复:
也就是说,将

C/C++ code
QString path = "C:/testA\\testB\testC.txt";

改成

C/C++ code
QString path = "C:/testA\\\\testB\\testC.txt";

谢谢啦。。。

#7


引用 5 楼  的回复:
QDir::toNativeSeparators
这个问题我记得曾经有说过


恩啊,thanks。。。

#8


 path.replace("\\","/");为什么没成功呢

#1


一个\ 表示转义的,\\才表示一个\,\\\\才表示\\

#2


引用 1 楼  的回复:
一个\ 表示转义的,\\才表示一个\,\\\\才表示\\


那我如何才能替换掉'\'字符呢?

#3


引用 1 楼  的回复:
一个\ 表示转义的,\\才表示一个\,\\\\才表示\\


tmpPath = path.replace("\\","/",Qt::CaseInsensitive);操作后
字符串中的\\变成了/,但是原来字符串中的\,也找不到了,取而代之的是一个空格的东西

#4


也就是说,将
QString path = "C:/testA\\testB\testC.txt";

改成
QString path = "C:/testA\\\\testB\\testC.txt";

#5


QDir::toNativeSeparators
这个问题我记得曾经有说过

#6


引用 4 楼  的回复:
也就是说,将

C/C++ code
QString path = "C:/testA\\testB\testC.txt";

改成

C/C++ code
QString path = "C:/testA\\\\testB\\testC.txt";

谢谢啦。。。

#7


引用 5 楼  的回复:
QDir::toNativeSeparators
这个问题我记得曾经有说过


恩啊,thanks。。。

#8


 path.replace("\\","/");为什么没成功呢