package LianXi1; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; import java.nio.charset.Charset; public class ReaderAndWriterFile { public void replaceFile(String file1,String file2){ BufferedReader reader = null; BufferedWriter writer = null; try{ //创建FileReader对象和FileWriter对象 //中文内容编码问题 //FileReader fr = new FileReader(file1); FileInputStream fis = new FileInputStream(file1); InputStreamReader isr =new InputStreamReader(fis,"utf-8"); FileWriter fw = new FileWriter(file2); //创建输入、输出流对象 reader = new BufferedReader(isr); writer = new BufferedWriter(fw); String line = null; StringBuffer sbf = new StringBuffer(); //循环读取并追加字符 while((line = reader.readLine())!=null){ sbf.append(line); } System.out.println("替换前:"+sbf); /*替换内容*/ String newString = sbf.toString().replace("{name}","欧欧"); newString = newString.replace("{type}","狗狗"); newString = newString.replace("{master}","李伟"); System.out.println("替换后:"+newString); writer.write(newString);//写入文件 }catch(IOException e){ e.printStackTrace(); }finally{ //关闭 reader和 writer. try{ if(reader!=null) reader.close(); if(reader!=null) writer.close(); }catch(IOException e){ e.printStackTrace(); } } } public static void main(String[] args) { ReaderAndWriterFile obj = new ReaderAndWriterFile(); obj.replaceFile("c:\\pe.template", "c:\\myDoc\\pet.txt"); System.out.println(Charset.defaultCharset()); } }