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());
}
}