1. 程式人生 > 其它 >替換文字檔案內容

替換文字檔案內容

  


package com.io.demo; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public class ReplaceDemo1 { /* * 讀取模板檔案pet.template * 將具體寵物資訊存入,替換後儲存成pet.txt * *   Reader 字元流讀取父類 抽象類 * InputStreamReader 子類 */ public static void main(String[] args) { // 讀取 FileInputStream fis = null; InputStreamReader isr = null; BufferedReader br = null; // 寫入 FileOutputStream fos = null; OutputStreamWriter osw = null; BufferedWriter bw = null; try { // 讀取                     //  相對路徑就是相對於當前檔案的路徑
fis = new FileInputStream("pet.template");  //  此處是相對路徑,路徑需求是哪改到哪就可以
isr = new InputStreamReader(fis); br = new BufferedReader(isr); // 寫入 fos = new FileOutputStream("pet.txt");  //  此處是相對路徑,按需求指定路徑就可以 osw = new OutputStreamWriter(fos); bw = new BufferedWriter(osw); String str1 = null; // 執行緒安全,可多執行緒操作字串 StringBuffer sbf = new StringBuffer(); while((str1 = br.readLine()) != null) { sbf.append(str1); } System.out.println("替換前:"); System.out.println(sbf.toString()); String str2 = sbf.toString(); str2 = str2.replace("{name}", "四腳吞金獸"); str2 = str2.replace("{type}", "上古神獸"); str2 = str2.replace("{master}", "蹦躂躂大仙兒"); System.out.println("替換後:"); System.out.println(str2); bw.write(str2); bw.flush(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { // 讀取 fis.close(); isr.close(); br.close(); // 寫入 fos.close(); osw.close(); bw.close(); } catch (IOException e) { e.printStackTrace(); } } } }