Has*_*anR 0 java linux spring-boot
当我尝试使用windwos并成功写入文件并附加内容时,我需要编写文件并附加内容,但是当涉及到linux环境时,我看不到任何创建的文件,也没有错误或异常。
这就是我在 Windows 上写文件的方式
HashMap<String, Object> map = new Gson().fromJson(dynamicJson, HashMap.class);
String keys = map.keySet().stream().collect(Collectors.joining(", "));
String values = map.values().stream().map(obj ->
String.valueOf(obj)).collect(Collectors.joining(", "));
File file = new File("D:\\report-temp.csv");
try (FileWriter fw = new FileWriter("D:\\report-temp.csv", true);
BufferedWriter bw = new BufferedWriter(fw);
PrintWriter out = new PrintWriter(bw)) {
if (file.length() == 0) {
out.println(keys);
out.println(values);
} else {
out.println(values);
}
} catch (IOException e) {
}
Run Code Online (Sandbox Code Playgroud)
当我在 linux 上运行它时,我已经更改了文件位置,/home/xx/hashan/但是我没有在 linux 上创建文件。
我看不到任何创建的文件,也没有错误或异常。
你错了;有错误。
} catch (IOException e) {}
但你实际上是用你的方式编写代码来忽略它们!
不要那样做。完全摆脱那个陷阱。如果您随后收到需要处理该异常的编译器错误,请添加throws IOException到方法签名中。继续添加这些直到错误消失(一旦您添加throws IOException到您的main方法中就会发生这种情况,您应该这样做。
问题可能与缺少目录或访问权限有关,您获得的异常会很明显,因此您需要做的就是删除那行愚蠢的代码。
| 归档时间: |
|
| 查看次数: |
58 次 |
| 最近记录: |