用正斜杠替换反斜杠

时间:2014-03-10 00:54:51

标签: java regex file

我有以下路径: 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");
    }

由于斜杠,附加路径不会被视为文件夹。有帮助吗?

编辑: 只是为了澄清,完整路径(两个字符串都附加)实际上是一个文件夹。

1 个答案:

答案 0 :(得分:8)

在java中,String是不可变的,所以当你用类似replace方法更改它们时,你必须将变量重新分配给更改的String。因此,您必须将替换代码更改为:

path = path.replace('/', '\\');