【Java面试笔记:基础】12.Java有几种文件拷贝方式?哪一种最高效?
在 Java 中,文件拷贝可以通过多种方式实现,不同方式的性能和适用场景有所差异。
1. Java 文件拷贝方式
传统 IO 方式
使用 FileInputStream 和 FileOutputStream,通过循环读取和写入数据实现文件拷贝。
示例代码:
try (InputStream is = new FileInputStream("source.txt");OutputStream os = new FileOutputStream("dest.txt")) {int byteData;while ((byteData = is.read()) != -1) {os.write(byteData);}
}
缺点:
- 每次读写单个字节,性能极差。
- 效率最低,仅适合教学演示,实际开发中禁用。
NIO 方式
使用 FileChannel 的 transfer