输入输出流和String的混合使用-替换信息

Posted baichang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了输入输出流和String的混合使用-替换信息相关的知识,希望对你有一定的参考价值。

---恢复内容开始---

 1 package demo;
 2 
 3 import java.io.BufferedReader;
 4 import java.io.BufferedWriter;
 5 import java.io.FileInputStream;
 6 import java.io.FileNotFoundException;
 7 import java.io.FileOutputStream;
 8 import java.io.FileReader;
 9 import java.io.FileWriter;
10 import java.io.IOException;
11 import java.io.InputStream;
12 import java.io.InputStreamReader;
13 import java.io.OutputStream;
14 
15 //读取源文件,把源文件的{name}{type}{master}等信息替换成具体的宠物信息,将替换后的内容写入到D:\pet.txt中
16 public class Test6 {
17     public static void main(String[] args) {
18         FileReader fr=null;
19         BufferedReader br=null;
20         FileWriter fw=null;
21         BufferedWriter bw=null;
22         
23         try {
24             //从源文件中读取
25             fr=new FileReader("pet.template");
26             br=new BufferedReader(fr);
27             
28             StringBuffer sbf=new StringBuffer();
29             String line=null;
30             while((line=br.readLine())!=null) {
31                 sbf.append(line);
32             }
33             //文件内容替换
34             System.out.println("替换前:"+sbf);
35             String newSbf=sbf.toString().replace("{name}", "欧欧").replace("{type}", "狗狗").replace("{master}", "李伟");
36             System.out.println("替换后:"+newSbf);
37             
38             //将替换后的内容写入文件中
39             fw=new FileWriter("D:\pet.txt");
40             bw=new BufferedWriter(fw);
41             bw.write(newSbf);
42             bw.flush();  //刷新缓冲区
43         } catch (FileNotFoundException e) {
44             e.printStackTrace();
45         } catch (IOException e) {
46             e.printStackTrace();
47         }finally {
48             try {
49                 if(bw!=null) {
50                     bw.close();
51                 }
52                 if(fw!=null) {
53                     fw.close();
54                 }
55                 if(br!=null) {
56                     br.close();
57                 }
58                 if(fr!=null) {
59                     fr.close();
60                 }
61                 
62             } catch (IOException e) {
63                 e.printStackTrace();
64             }
65             
66         }
67         
68         
69     }
70 }

 

---恢复内容结束---

以上是关于输入输出流和String的混合使用-替换信息的主要内容,如果未能解决你的问题,请参考以下文章

Java 如何使用输入流和输出流 将txt文件中的某一行数据删除?

[转]怎么解决输入流和输出流编码问题

File类--输入流和输出流

标准文件IO详解---标准输入流标准输出流和标准错误流

数据输入/输出流和缓冲输入/输出流有啥区别?

第40节:Java中的IO知识案例