栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用Java NIO读取和写入大文件

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Java NIO读取和写入大文件

请注意,您可以

Files.copy(Paths.get(inFileStr),Paths.get(outFileStr),StandardCopyOption.REPLACe_EXISTING)
像示例代码那样简单地用于复制文件,只是速度更快,而且仅一行代码。

否则,如果您已经打开了两个文件通道,则可以使用

in.transferTo(0, in.size(),out)
将该
in
通道的全部内容传输到该
out
通道。请注意,此方法允许在源文件中指定一个范围,该范围将被传输到目标通道的当前位置(最初为零),并且还有一种相反的方法,即
out.transferFrom(in,0,in.size())
从源通道的当前位置传输数据到目标文件中的绝对范围。

它们在一起,可以有效地进行几乎所有可以想象到的简单的批量传输,而无需将数据复制到Java侧缓冲区中。如果那不能解决您的需求,则您必须在问题中更加具体。

顺便说一句,从Java
7开始,您可以直接打开一个

FileChannel
不带
FileInputStream
/
FileOutputStream
绕行的位置。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/451753.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号