BufferedInputStream 测试

本文探讨了在Java中解析大型ARFF文件时遇到的技术挑战,特别是如何利用BufferedInputStream来有效处理大文件读取问题,同时保持良好的性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      在读取arff文件的时候,有点是需要注意到的。在Java中,InputStream,DataInputStream这些类都不支持mark和reset,也就是说不能倒回去再读。而ByteArrayInputStream支持mark和reset,但是arff文件作为一个数据源文件,可能包含几十MB,甚至是几百MB。。。的数据,如果全部先读进内存,再从内存中解析,恐怕并不可行。还好Java中实现了BufferedInputStream,它可以预读8192个字节的缓冲,内存中的读完后,再从输入流中继续读8192个字节的缓冲,并且支持mark和reset,这就是我在Java里面自己实现解析arff时候的主要技术问题所在。至于字符串的解析就很简单了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值