如何防止从输入String中删除斜杠?

时间:2015-07-22 14:25:44

标签: java escaping

用户输入与文件路径对应的String。但是,由于Java会自动删除\,因此必须放两个。我怎样才能让他们只输入一个像C:\ path \ filename.txt这样的字符串,而不用担心添加撇号或其他斜线等等?

public String getDescriptorPath(){
    return this.textField.getText();
}

请允许我澄清一下:用户键入TextField。

让我说他输入:“C:\ Users \ daniel.bak \ Box Sync \ Descriptor Analyzer \ AnalyzeMe.xml”

出现为“C:Usersdaniel.bakBox SyncDescriptor AnalyzerAnalyzeMe.xml”

我在这里添加额外的斜杠,因为StackOverflow做同样的事情。

2 个答案:

答案 0 :(得分:1)

如果路径是从键盘手动输入的(例如从scanner.nextLine())或从文件中读取,则相应的字符串包含正确数量的斜杠。

例如,如果在文本文件中,您有以下字符

C:\path\filename.txt

在java中,您在字符串中读取该文件的内容,其内容等同于以下字符串

"C:\\path\\filename.txt"

答案 1 :(得分:1)

我对你的意思有点困惑,当我拿一个JTextField并打印它的内容时,它给我的内容与我在屏幕上看到的完全相同。

JTextField的内容:" C:\ path \ file.txt"
终端输出:" C:\ path \ file.txt"

然后,此字符串应该有效,以便从中创建文件,或者您想要处理它。