【Java】文件中指定单词的替换

一、需求

a)        文件template.txt内容:

“大家好,我叫name,我养了一只狗,它叫dog,dog很可爱。

我喜欢和dog一起游泳,一起散步。

name欢迎大家来家里作客,也期待你们和我的dog一起玩耍。”

b)        从控制台输入人的名字,将文件中的name换成你输入的人名字;从控制台输入狗狗的名字,将文件中的dog换成你输入的狗狗名字;将修改后的字符串写入到文件中(文件的名字是人的名字)

二、代码

public classUpdataTemplate {

     public static void main(String[] args) {

         Scannersc= newScanner(System.in);

         //读文件,将文件中的数据存放到一个字符串中

         BufferedReaderbr = null;

         BufferedWriterbw = null;

         try {

              //定义一个字符串用于接收读取的数据

              StringBuffersb = new StringBuffer();

              //获得输入流对象,可以读取文件

              br = new BufferedReader(new FileReader("d:/template.txt"));

              Stringline;

              //循环逐行读取数据

              while(null != (line = br.readLine())){

                   sb.append(line + "\n");

              }

              System.out.println(sb);

              System.out.println("请输入您的姓名:");

              Stringname = sc.next();

              System.out.println("请输入您家狗狗的名字:");

              StringdogName = sc.next();

              Strings = sb.toString();

              s = s.replaceAll("name", name).replaceAll("dog", dogName);

              System.out.println(s);

              //创建一个输出流对象

              bw = new BufferedWriter(new FileWriter("d:/"+name+".txt"));

              bw.write(s);

              bw.flush();

         }catch(Exception e) {

              e.printStackTrace();

         }finally{

              try {

                   if(null != br){

                       br.close();

                   }

                   if(null != bw){

                       bw.close();

                   }

              }catch(IOException e) {

                   e.printStackTrace();

              }

         }

     }

}

三、执行结果

大家好,我叫name,我养了一只狗,它叫dog,dog很可爱。

我喜欢和dog一起游泳,一起散步。

name欢迎大家来家里作客,也期待你们和我的dog一起玩耍。

 

请输入您的姓名:

blair

请输入您家狗狗的名字:

petty

大家好,我叫blair,我养了一只狗,它叫petty,petty很可爱。

我喜欢和petty一起游泳,一起散步。

blair欢迎大家来家里作客,也期待你们和我的petty一起玩耍。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值