根据官方Java教程,写入文件的最佳方法是: http://docs.oracle.com/javase/tutorial/essential/io/file.html#channels
在使用NIO.2创建自己的FileUtil.write(文件,文本)方法之前,我想知道某处是否已经存在这样的方法。
我检查了最新的apache commons io和guava的来源,但他们都只创建了一个FileOutputStream,将字符串转换为字节数组并写入。我很惊讶。
所以我有两个问题:
答案 0 :(得分:0)
NIO应该更快,因为它可以使用直接缓冲区。来自ByteBuffer API:
给定直接字节缓冲区,Java虚拟机将尽最大努力直接执行本机I / O操作。也就是说,它将尝试避免在每次调用其中一个底层操作系统的本机I / O操作之前(或之后)将缓冲区的内容复制到(或从中)缓冲区。