java 读取.file文件_JDK1.7 之java.nio.file.Files 读取文件仅需一行代码实现

本文介绍了Java NIO中`java.nio.file.Files`类的使用,特别是如何通过一行代码读取文件。文章详细讲解了`readAllBytes()`和`readAllLines()`方法,并给出了不同场景下的读取文件示例,包括使用Java 8的Stream API。同时,还展示了如何在Java 8中高效地读写文件。
摘要由CSDN通过智能技术生成

jdk1.7中引入了新的文件操作类java.nio.file这个包,其中有个files类它包含了很多有用的方法来操作文件,比如检查文件是否为隐藏文件,或者是检查文件是否为只读文件。开发者还可以使用files.readallbytes(path)方法把整个文件读入内存,此方法返回一个字节数组,还可以把结果传递给string的构造器,以便创建字符串输出。此方法确保了当读入文件的所有字节内容时,无论是否出现io异常或其它的未检查异常,资源都会关闭。这意味着在读文件到最后的块内容后,无需关闭文件。要注意,此方法不适合读取很大的文件,因为可能存在内存空间不足的问题。开发者还应该明确规定文件的字符编码,以避免任异常或解析错误。

readallbytes(path)方法的源码:

/**

* reads all the bytes from a file. the method ensures that the file is

* closed when all bytes have been read or an i/o error, or other runtime

* exception, is thrown.

* 注意该方法只适用于简单的情况,这种简单的情况能够很方便地将所有的字节读进一个字节数组,但并不适合用来读取大文件

*

note that this method is intended for simple cases where it is

* convenient to read all bytes into a byte array. it is not intended for

* reading in large files.

*

* @param path

* the path to the file

*

* @return a byte array containing the bytes read from the file

*

* @throws ioexception

* if an i/o error occurs reading from the stream

* 如果大于文件2g,将抛出内存溢出异常

* @throws outofmemoryerror

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值