42.替换文本文件内容

Posted 许先

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了42.替换文本文件内容相关的知识,希望对你有一定的参考价值。

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.nio.charset.Charset;

import org.omg.CORBA.Environment;

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(writer!=null)
                    writer.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    public static void main(String[] args) {
        ReaderAndWriterFile obj = new ReaderAndWriterFile();
        obj.replaceFile("c:\\pet.template", "C:\\myDoc\\pet.txt");   
        System.out.println(Charset.defaultCharset());
    }
}

 

以上是关于42.替换文本文件内容的主要内容,如果未能解决你的问题,请参考以下文章

替换文本内容

如何使用C替换文本文件中的字符?

使用 PHP 为大型文本数据和文件加速算法

如何用批处理替换文本内容?

shell脚本替换文本内容

替换的片段在背景上仍然可见