求一小段代码 把整个文件读取 转换成一行行读取的 非常感谢

askfor4 2012-07-31 05:53:25
本人初学者 写了个程序读大文件实在是太消耗内存
开始是一次读取全部文件 想改成一行一行读的。。
想请教高手麻烦帮我改一下 非常感谢
程序如下 这是原始读取全部文件的代码,包括后面流的关闭之类 麻烦都帮忙写清楚一点 不甚感激


public class AAAA{
DocumentBuilderFactory domfac = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = domfac.newDocumentBuilder();
InputStream is = new FileInputStream(filename);
Document doc = builder.parse(is);


谢谢!
...全文
119 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qybao 2012-07-31
  • 打赏
  • 举报
回复
想一行一行解析xml?
那应该采用基于事件SAX,解析你所关注的tag的数据
xu200074212 2012-07-31
  • 打赏
  • 举报
回复
用基于事件的sax 可以把你关心的数据全保存到你自定义的数据结构里。
即使你就是要读取xml文件中的所有,那也应该如此。否则使用dom在内存上的消耗降不下来。
askfor4 2012-07-31
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

看你代码应该是读的xml,而且用dom方式读的。
文件太大的话,用sax或者stax解析方式,google下。。。
[/Quote]

对的 XML 貌似DOM必须全部读取啊 很纠结。。又不想改太多。。
xu200074212 2012-07-31
  • 打赏
  • 举报
回复
看你代码应该是读的xml,而且用dom方式读的。
文件太大的话,用sax或者stax解析方式,google下。。。
liuwons 2012-07-31
  • 打赏
  • 举报
回复
BufferedReader br=new BufferedReader(new FileReader(filename));
然后就可以用br.readLine()一行行地读了

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧