This question already has answers here:
String replace method is not replacing characters
(5个答案)
How to replace backward slash to forward slash using java?
(3个答案)
3年前关闭。
我有以下路径:
我正在尝试将上述路径附加到此路径:
这是有问题的代码:
由于斜杠,附加的路径不被视为文件夹。有什么帮助吗?
编辑:
为了清楚起见,完整路径(两个字符串都附加了)实际上是一个文件夹。
(5个答案)
How to replace backward slash to forward slash using java?
(3个答案)
3年前关闭。
我有以下路径:
com/teama/merc/test/resTest
我想将其转换为:com\teama\merc\test\resTest
我正在尝试将上述路径附加到此路径:
C:\Users\Toby\git\MERCury\MERCury\
使用str.replace('/', '\\');
,但是当我将两个字符串都附加到一起时,这是输出:C:\Users\Toby\git\MERCury\MERCury\com/teama/merc/test/resTest
这是有问题的代码:
String home = System.getProperty("user.dir");
path.replace('/', '\\');
System.out.println(path);
String folder = home + File.separatorChar + path;
System.out.println(folder);
File file = new File(folder);
if(file.isDirectory())
{
System.out.println(file.getPath() + " is a directory");
}
由于斜杠,附加的路径不被视为文件夹。有什么帮助吗?
编辑:
为了清楚起见,完整路径(两个字符串都附加了)实际上是一个文件夹。
最佳答案
在Java中,String不可更改,因此当您使用replace方法更改它们时,必须将变量重新分配给更改后的String。因此,您必须将替换代码更改为此:
path = path.replace('/', '\\');
10-06 03:56