如果操作系统是Windows,并且我从操作系统获得fileName
,例如在File.listFiles()
中,我会得到反斜杠。如果要在消息String
中包含文件名,我需要管理这些以转发斜杠。使用replaceAll("\\","/")
可以正常工作,但是无条件地执行它是危险的还是有风险的?我正在开发Windows,我希望这些代码能够在其他平台上运行。
答案 0 :(得分:0)
在Java中,File.separator
字段设置为系统特定的String
,表示文件系统上正确的斜杠。如果您知道传入的字符串总是有反斜杠,并且您需要特定于系统的斜杠,那么您可以使用
replaceAll("\\", File.separator)
在Windows上,这会生成原始字符串,而在Mac和Unix上,它会产生一个带正斜杠而不是反斜杠的字符串。