Java BufferedWriter 不写入文件

标签 java bufferedwriter

我想将一些字符串写入文件(使用 Java 8)。此代码片段编译时没有任何错误,但未写入文件....我是 noob ofcorz...有什么建议吗?

import java.io.BufferedWriter;
import java.io.FileWriter;

public class Main {
    private static final String FILENAME = "C:\\IntelliJfiles\\write-to- 
                                              file\\src\\pl\\sca\\file.txt";

    public static void main(String[] args) {

        try {
            String str = "kal";

            BufferedWriter writer = new BufferedWriter(new 
            FileWriter(FILENAME));
            writer.write(str);

            System.out.println("Done");

        }
        catch (Exception e) {
            System.out.println("There's no file");
            e.printStackTrace();
        }
    }
}

最佳答案

在您关闭文件之前,它可能不会写入文件 - 写入磁盘非常耗时,因此它会等到写入足够的字符后才将它们实际放入文件中。这就是 BufferedWriter 中的缓冲内容方法。如果关闭它,它会将缓冲区“刷新”到磁盘上。

您可以使用 writer.close() 自行关闭它

或者您可以使用try-with-resources ,这将自动关闭编写器:

try (FileWriter fw = new FileWriter("C:\\IntelliJfiles\\write-to-file\\src\\pl\\sca\\file.txt");
     BufferedWriter bw = new BufferedWriter(fw)){
    bw.write("kal");
} catch (Exception e) {
    e.printStackTrace();
}

关于Java BufferedWriter 不写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50117406/

相关文章:

java - Android Studio Bumblebee,HMS Toolkit 不工作,为什么?

java - 使用 SQLite 进行简单的数学计算 - Android

java简单关联

python - 处理 4 - 线程 "AWT-EventQueue-0"中的异常

java - 如何针对可以并行运行的 JPA 编写 junit 测试?

java - 从另一个txt文件复制内容后如何使用Java重命名txt文件

java - 将字符串写入 Assets 文件夹中的文件

java - BufferedWriter 类型中的方法 write(int) 不适用于参数 (Long)

java - 使用 BufferedReader/BufferedWriter 进行套接字连接

java - 使用 BufferedReader 读取大型文本文件,打印每一行会减慢该过程的严重程度吗?