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

J2EE 码拜 9年前 (2015-04-19) 2351次浏览 0个评论

如题,请给出demo,不胜感激!

java如何按指定行读取文件内容
/*
 * 指定文件及路径,按行查询所有内容输出
 * 
 * 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)-错误”);
}
}

这个是个例子  自己看看吧

java如何按指定行读取文件内容
一楼朋友,我要的是按指定行读取。
java如何按指定行读取文件内容
40分
用LineNumberReader,读取行号,根据行号判断是不是你要的
java如何按指定行读取文件内容
查过 LineNumberReader  api,   getLineNumber()    setLineNumber(specLines)好像不管用
我说的意思是,一次读取文件一部分,下次读取的时候,按照上次读取结束的地方开始接着往下读取
java如何按指定行读取文件内容
记录读到多少行,下次使用LineNumberReader  继续读不就好了吗
java如何按指定行读取文件内容
/*
 * 指定文件及路径,按行查询指定内容,并返回结果集
 * 
 * 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;
}

指定行  这个可以 就是一些正则表达式  需要你自己找找

java如何按指定行读取文件内容
http://stackoverflow.com/questions/2312756/in-java-how-to-read-from-a-file-a-specific-line-given-the-line-number
java如何按指定行读取文件内容
问题已解决,其实在Java api中有提供RandomAccessFile这样一个类,它能很好地测量到的文件指针偏移量,从而可以从指定的行数继续往下读取文件内容,更详细内容可以查阅Java API。
不过怎么样,还是谢谢各位热心的帮忙!

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明java如何按指定行读取文件内容
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!