A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


InputStream的available()方法可以获取要读取文件的长度,File 类也有一个方法获取文件长度的能体会()方法,所以可通过这两个方法获得文件长度后,就可以定义一个与文件长度一样的数组来存放读取的数据,这样就可以避免循环。表面上看是简化了代码,但是这是一种温柔的陷阱,我们知道Jvm虚拟机(默认情况下)在内存中只开辟了64M左右的空间。当文件的内容非常大的时候,就可能出现内存溢出的问题,这是相当危险的。所以,不建议这样做。还是建议定义一个1024整数倍长度的byte(字节流)或char(字符流)数组来接收数据,在运用循环的方式来接收数据比较安全。

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马