输入路径的字符串替换:"\"到"/"

Ris*_*shu 3 java java-ee

请考虑以下代码:

class Sample{
public static void main(String args[]){
    String text1="C:\Documents\User\sample";

    String text2=text1.replace('\','/');

    System.out.println(text2);
        }
}
Run Code Online (Sandbox Code Playgroud)

我有一个输入,其中text1正在接收文件路径.现在我想将text1中的所有"\"替换为"/".我使用了上面的代码.

首先,显示的错误是:"非法转义序列",这是可以理解的,不是我的问题,因为我正在创建一个Java EE应用程序,用户在输入框中输入路径.

但我无法将"\"更改为"/",这对我的代码正常运行至关重要.我无法解决这个问题.我甚至尝试过使用String.replaceAll()方法,但没有结果.

Tim*_*ker 5

你需要逃避反斜杠:

String text2=aa.replace('\\','/');
Run Code Online (Sandbox Code Playgroud)

顺便说一句,replaceAll()会让你的问题更复杂:现在你正在处理一个正则表达式而不是一个简单的字符串替换,这意味着你的反斜杠需要再次转义为正则表达式引擎:

String text2=aa.replaceAll("\\\\", "/");
Run Code Online (Sandbox Code Playgroud)