2

我尝试使用 System.getenv("APPDATA"),它在文件夹之间返回 \。FileOutPutStream 不处理这些,那么如何将 \'s 转换为 /'s?

谢谢

4

2 回答 2

4

每次需要使用 a\时,写两个:\\。换句话说:你需要转义它,因为\角色本身就是转义字符,它也需要转义!

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

回到你的问题:发生这种情况有点奇怪,返回的字符串getenv肯定已经转义了\字符。让我们尝试使用采用 a的构造函数File

FileOutputStream fos = new FileOutputStream(new File(System.getenv("APPDATA")));
于 2013-03-08T20:08:23.030 回答
0
File f = new File(System.getenv("APPDATA"));
System.out.println(f.getAbsolutePath());

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

于 2013-03-08T20:13:21.953 回答