解决方案 »

  1.   

    读文件可以用readline(),每次读取一行。然后用indexOf("BN:")判断是否存在,如果返回值大于等于0,说明存在,再用substring截取返回值后面的字符串。
      

  2.   

    没什么特别的方法,打开文件,从输入流中逐行读取,对读取到的字符数据做处理,正则匹配或者查找注意文件如果很大,用bufferedReader类型的输入流,一边读一边处理,防止内存溢出
      

  3.   

    java.io.BufferedReader;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;public class Demo6 {
    public static void main(String[] args) throws FileNotFoundException {
    String filePath = "E:/JAVA_WorkSpace/Thread/src/test.txt";
    BufferedReader in = new BufferedReader(new FileReader(
    new File(filePath)));
    String msg = null;
    // 记录行数
    int line = 0;
    // 指定要查询的行
    int request = 3;
    try {
    while ((msg = in.readLine()) != null) {
    line++;
    if (line == request) {
    int index = msg.indexOf("BN:");
    System.out.println(msg.substring(index + "BN:".length()));
    }
    }
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    }