我想提取一个txt文件里的
第  10 到 49  行
第  59 到 98  行
第  108 到 147 行
第  157 到 196 行依此类推
请问怎么用java来做??~~~

解决方案 »

  1.   

    设置一个变量 i
    遇到/r/n时候
    ++i
    当不满足条件时候不读取
      

  2.   

    BufferReader 有一个readline() .          你只需要先读10行.不管他,然后循环40行就好了. 到循环的时候再处理你的数据. 
      

  3.   

    java code原来我也不会,后来到网上找的!呵呵!import java.io.BufferedReader;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.io.OutputStreamWriter;
    import java.io.PrintStream;
    import java.io.PrintWriter;public final class Test {   
        public void readToBuffer(StringBuffer buffer, InputStream is)
            throws IOException {
            int i=0;
            String line;        // 用来保存每行读取的内容
            BufferedReader reader = new BufferedReader(new InputStreamReader(is));
            line = reader.readLine();  // 读取第一行
            
            while(line != null) { 
             i++;// 如果 line 为空说明读完了
             if(i>=2&&i<=10){      
             buffer.append(line); 
             }//读取第2行到第10行的内容添加到 buffer 中 
                buffer.append("\n");        // 添加换行符
                line = reader.readLine();  // 读取下一行
               
            }
        }
        public static void main(String[] args) throws IOException {
       
            Test test = new Test();
            
          
                InputStream is = new FileInputStream("E:\\test.txt");
                StringBuffer buffer = new StringBuffer();
                test.readToBuffer(buffer, is);
                System.out.println(buffer);   
            // 将读到 buffer 中的内容写出来
                is.close();
             
        }}