java如何按指定行读取文件内容

疯狂de攻城狮 2014-07-22 03:47:56
如题,请给出demo,不胜感激!
...全文
5306 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
菜鸟很菜 2016-07-15
  • 打赏
  • 举报
回复
那这样的话不是还要记录每一行的偏移量???
疯狂de攻城狮 2014-07-26
  • 打赏
  • 举报
回复
问题已解决,其实在Java api中有提供RandomAccessFile这样一个类,它能很好地测量到的文件指针偏移量,从而可以从指定的行数继续往下读取文件内容,更详细内容可以查阅Java API。 不过怎么样,还是谢谢各位热心的帮忙!
晓风吹雾 2014-07-23
  • 打赏
  • 举报
回复
http://stackoverflow.com/questions/2312756/in-java-how-to-read-from-a-file-a-specific-line-given-the-line-number
LOVE-漂泊 2014-07-23
  • 打赏
  • 举报
回复
/* * 指定文件及路径,按行查询指定内容,并返回结果集 * * src 文件路径(含文件名)如:C://text.txt * * where 指定条件(正则表达式) 如: * * * * 1、指定开始字符或字符串正则: * * 2、指定开始及结束字符或字符串正则: * * 3、指定结束字符或字符串正则: * * 4、指定包含内容正则: */ public List<Object> select(String src, String where) { List<Object> list = new ArrayList<Object>(); try { FileReader reader = new FileReader(src); BufferedReader br = new BufferedReader(reader); String obj = null; while ((obj = br.readLine()) != null) { Pattern = java.util.regex.Pattern.compile(where); matcher = Pattern.matcher(obj); fang = matcher.matches(); if(fang){ list.add(obj); } } br.close(); reader.close(); } catch (IOException e) { System.out .println("FileTool-->select(String path,String name,String where)-错误"); return list=null; } return list; } 指定行 这个可以 就是一些正则表达式 需要你自己找找
wqc5461 2014-07-22
  • 打赏
  • 举报
回复
记录读到多少行,下次使用LineNumberReader 继续读不就好了吗
疯狂de攻城狮 2014-07-22
  • 打赏
  • 举报
回复
查过 LineNumberReader api, getLineNumber() setLineNumber(specLines)好像不管用 我说的意思是,一次读取文件一部分,下次读取的时候,按照上次读取结束的地方开始接着往下读取
S117 2014-07-22
  • 打赏
  • 举报
回复
用LineNumberReader,读取行号,根据行号判断是不是你要的
疯狂de攻城狮 2014-07-22
  • 打赏
  • 举报
回复
一楼朋友,我要的是按指定行读取。
LOVE-漂泊 2014-07-22
  • 打赏
  • 举报
回复
/* * 指定文件及路径,按行查询所有内容输出 * * src 文件路径(含文件名)如:C://text.txt */ public void selectout(String src) { try { FileReader reader = new FileReader(src); BufferedReader br = new BufferedReader(reader); Object obj = null; while ((obj = br.readLine()) != null) { System.out.println(obj); } br.close(); reader.close(); } catch (IOException e) { System.out.println("FileTool-->select(String src)-错误"); } } 这个是个例子 自己看看吧

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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