java - 无法向文件写入任何内容

标签 java debugging file-io

我正在尝试写入文件

try
{
    PrintWriter fileout = new PrintWriter("./src/javaapplication1/test.dat");

    for(int i=0;i<10;i++)
    {
         fileout.println(i);
    }
 }
 catch (IOException e)
 {
      System.out.println("File cannot be created");

 }

但是没有任何内容被写入文件,我期待

1
2
3
4
5
6
7
8
9

我写入文件的方式有什么问题吗?

最佳答案

您还没有关闭 writer。几乎可以肯定它只是缓冲了所有数据。

您应该始终关闭 IO 流等。如果您使用的是 Java 7+,则可以使用 try-with-resources 语句:

try (PrintWriter fileout = new PrintWriter("./src/javaapplication1/test.dat")) {
    for (int i = 0; i < 10; i++) {
        fileout.println(i);
    }
} catch (IOException e) {
    // Don't just swallow the exception - use that information!
    System.out.println("Error writing file: " + e);
}

如果您使用的是早期版本的 Java,则无论是否抛出异常,都应该使用 finally block 来关闭编写器。

关于java - 无法向文件写入任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22891398/

相关文章:

c++ - OpenCV VideoCapture 仅在断点后才能正常工作

node.js - 找出我的nodejs线程卡在哪里?

android - 如何在java中从drawable读取图像到File对象?

java - 如何读取 Maven Web 应用程序的 webapp 文件夹中的目录

java - 用 Java 显示奇特的方程式

java - 使用定时器安排多个任务

java - 通过测量颜色和边缘距离来组合欧几里得距离

java - 在 ubuntu 12.04 中安装 netbeans 时出错

c++ - 打破 vulkan 以测试调试回调是否设置正确的好方法是什么?

c - 使用 mmap 将文件读取为字符串