Java文件错误因为\

时间:2013-03-08 20:07:21

标签: java

我尝试过使用System.getenv(“APPDATA”),它在文件夹之间返回\。 FileOutPutStream不处理这些,所以如何将\转换为/?

由于

2 个答案:

答案 0 :(得分:4)

每当您需要使用\时,请写两个:\\。换句话说:你需要转义它,因为\字符本身就是转义字符,它也需要被转义!

或者,对于文件路径,您可以使用单个/,但无论您在哪个平台(Windows,Linux,Mac等)都可以使用它。

回到你的问题:发生这种情况有点奇怪,getenv返回的字符串肯定已经转义\字符。让我们尝试使用File代替FileOutputStream fos = new FileOutputStream(new File(System.getenv("APPDATA")));

{{1}}

答案 1 :(得分:0)

File f = new File(System.getenv("APPDATA"));
System.out.println(f.getAbsolutePath());

然后你可以构造一个新的FileOutputStream(f);