【Java】⽂件中指定单词的替换
⼀、需求
a) ⽂件内容:
“⼤家好,我叫name,我养了⼀只狗,它叫dog,dog很可爱。
我喜欢和dog⼀起游泳,⼀起散步。
name欢迎⼤家来家⾥作客,也期待你们和我的dog⼀起玩耍。”
b) 从控制台输⼊⼈的名字,将⽂件中的name换成你输⼊的⼈名字;从控制台输⼊狗狗的名字,将⽂件中的dog换成你输⼊的狗狗名字;将修改后的字符串写⼊到⽂件中(⽂件的名字是⼈的名字)
⼆、代码
public class UpdataTemplate {
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
//读⽂件,将⽂件中的数据存放到⼀个字符串中
BufferedReader br = null;
BufferedWriter bw = null;
try {
//定义⼀个字符串⽤于接收读取的数据
StringBuffer sb = new StringBuffer();
//获得输⼊流对象,可以读取⽂件
br = new BufferedReader(new FileReader("d:/"));
replaceall()String line;
//循环逐⾏读取数据
while(null != (line = br.readLine())){
sb.append(line + "\n");
}
System.out.println(sb);
System.out.println("请输⼊您的姓名:");
String name = sc.next();
System.out.println("请输⼊您家狗狗的名字:");
String dogName = sc.next();
String s = 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⼀起玩耍。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论