BufferedWriter,FileWriter,Output Stream ......这些东西最现代化的方法是什么?

ste*_*eaw 3 java logging file streamwriter bufferedwriter

我正在尝试以编程方式在java中创建一个新文件,并将字符串数组写入该文件.如果文件已经存在,我只想附加另一个字符串数组(这就像一个日志文件).什么是最"现代"的方式来做这样的事情?FileWriter和Buffered写入程序仍然可行吗?我在这里发现的大多数东西都是从2010年开始的......就在5年前!

编辑:我实际上需要接受一个ArrayList,但不应该有区别

Dun*_*nes 5

使用Java NIO,您可以避免直接处理流并通过以下方式实现结果:

List<String> lines = //...  

Path file = Paths.get("your path...");      
Files.write(file, lines, StandardCharsets.UTF_8,
    StandardOpenOption.APPEND, StandardOpenOption.CREATE);
Run Code Online (Sandbox Code Playgroud)

您可以将多个OptionOption值传递给该方法.这里我们传递CREATEAPPEND告诉NIO创建文件(如果它尚不存在)并附加到文件(如果它已经存在).