我正在创建一个像这样的文件
try {
File file = new File(workingDir, obj.getName() + ".xls");
outputStream = new FileOutputStream(file);
} catch (FileNotFoundException ex) {
ex.printStackTrace();
}
我得到
java.io.FileNotFoundException: ..\a\relative\path\obj_name.xls (The parameter is incorrect)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
“参数不正确”是什么意思?我验证的路径名存在;它不应该只是创建文件名吗?这是在 Windows 机器上。该代码在基于 unix 的系统上工作而不会出现此错误。
更新
验证输出流尝试写入的文件是否存在。还验证了该文件是可写的。经过一番大惊小怪,我删除了实际路径,只是传入了文件名(不需要),这样就可以了。所以这个问题与路径有关。我需要转义路径中的字符吗?