java 读取指定行

来源:互联网 发布:iphone5s有4g网络吗 编辑:程序博客网 时间:2024/05/20 01:44

 

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Vector;


public class LogReader {
 
 private  Vector vector = new Vector();
 private String path;
 
 public LogReader(String path) throws IOException {
  this.path=path;
  BufferedReader reader=new BufferedReader(new FileReader(path));
  while(true){
  String line = reader.readLine();
   if(line!=null){
    this.vector.add(line);
   }else{
    break;
   }
  }
  reader.close();
 }
 
 public String getLine(int index){
  return (String)this.vector.get(index);
 }
 
 
 public void writeLine(int lineNum,String text) throws Exception{
  vector.add(lineNum,text);
  Iterator it = vector.iterator();
  String outStr = "";
  while(it.hasNext()){
   outStr+=(String)it.next()+"/n";
  }
  putOut(outStr);
  
  
 }
 
 
 
 public void putOut(String text) throws IOException{
  BufferedWriter writer = new BufferedWriter(new FileWriter(path));
  writer.write(text);
  writer.flush();
  writer.close();
 }
 
 public void close(){
 }
 
 //test
 public static void main(String[] args) throws Exception{
  LogReader logReader = new LogReader("C:/test/a.txt");
  System.out.println(logReader.getLine(0));
  logReader.writeLine(1, "i love you");
  //logReader.close();
 }
}

 

原创粉丝点击