天天看点

java读写txt文件(无乱码版)

package iptv; 


import java.io.BufferedReader; 

import java.io.BufferedWriter; 

import java.io.File; 

import java.io.FileInputStream; 

import java.io.FileOutputStream; 

import java.io.FileReader; 

import java.io.FileWriter; 

import java.io.IOException; 

import java.io.InputStreamReader; 

import java.io.OutputStreamWriter; 


public class ParseFileTest { 


 /** 

 * 用于解析日志文件,生成符合条件的东西 

 * @param args 

 * @CreateDate:2013-7-22 下午8:43:27 

 * @throws IOException 

 */ 

 public static void main(String[] args) throws IOException { 

 // TODO Auto-generated method stub 

 String path = "E:/31/catalina.out.2013-07-19"; 

 String destPath = "E:/31/output.txt"; 

 File srcfile = new File(path); 

 File destFile = new File(destPath); 


 if(!destFile.exists()){ 

     destFile.createNewFile(); 

   } 


// FileReader ins = new FileReader(srcfile); 

 InputStreamReader read = new InputStreamReader(new FileInputStream(srcfile),"GBK"); 

 OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(destFile,true),"GBK"); 


//   FileWriter outs = new FileWriter(destFile); 

   

   BufferedReader readBuf = new BufferedReader(read); 

   BufferedWriter writeBuf = new BufferedWriter(write); 


   String s = null; 

   String temp = null; 

   while((s=readBuf.readLine())!=null){ 

//   s = new String(s.getBytes(),"utf-8");  

   System.out.println(s); 

 if(s.indexOf("接受到SOAP请求{ ")<0){ 

 continue; 

 } 

 temp = s.substring(s.indexOf("接受到SOAP请求{ "),s.indexOf("}")); 

    System.out.println(temp); 

    writeBuf.write(temp); 

    writeBuf.newLine();//启用新的一行 

    writeBuf.flush(); 

   } 


    

   readBuf.close(); 

   writeBuf.close(); 

   read.close(); 

   write.close(); 

 } 


}