我尝试使用 System.getenv("APPDATA"),它在文件夹之间返回 \。FileOutPutStream 不处理这些,那么如何将 \'s 转换为 /'s?
谢谢
每次需要使用 a\
时,写两个:\\
。换句话说:你需要转义它,因为\
角色本身就是转义字符,它也需要转义!
或者,对于文件路径,您可以使用单个/
,无论您在哪个平台(Windows、Linux、mac 等)中它都可以工作。
回到你的问题:发生这种情况有点奇怪,返回的字符串getenv
肯定已经转义了\
字符。让我们尝试使用采用 a的构造函数File
:
FileOutputStream fos = new FileOutputStream(new File(System.getenv("APPDATA")));
File f = new File(System.getenv("APPDATA"));
System.out.println(f.getAbsolutePath());
然后你可以构造一个新的 FileOutputStream(f);