关于一个修改文件的问题

naixian1983 2010-03-22 09:12:34
在txt文件下某一段储存以下内容

relation: key person
name: ken
gender: male
tel:13900345671

要求替换文件内容为:

relation: key person
name: kelly
gender: female
tel:13876390052





String[] record = new String[100];

int i=0;

try
{

File file=new File("Family Info.txt");
FileWriter In=new FileWriter(file,true);

FileReader read=new FileReader(file);
Scanner scanner=new Scanner(read);

while(scanner.hasNextLine())
{

record[i]=scanner.nextLine();

i++;
}



for(int a=0;a<i;a++)
{
if(record[a].equals("Relation:key person"))
{

String temp[]=new String[3];


for(int b=a;b<a+3;b++)
{

String key[]=record[b].split(":");
temp[b-a]=key[1];


}
}
}


怎样才能做到逐行替换文件内容?谢谢

...全文
74 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ark032425 2010-03-22
  • 打赏
  • 举报
回复
搂主看一下该类的API,比自己一行一行的读省事多了
Ark032425 2010-03-22
  • 打赏
  • 举报
回复
用java.util.Properties
简单快捷
ifrancis 2010-03-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 notlogin 的回复:]
Java code

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;

public class Test {

String newGender;
String newName;

String changeGender(Stri……
[/Quote]顶,try catch 补上就OK了
notlogin 2010-03-22
  • 打赏
  • 举报
回复

String changeName(String name) {
this.newName = name;
return newGender;
}


笔误~~~~~~~~~应该是

String changeName(String name) {
this.newName = name;
return newName; //这里
}
notlogin 2010-03-22
  • 打赏
  • 举报
回复

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;

public class Test {

String newGender;
String newName;

String changeGender(String Gender) {
this.newGender = Gender;
return newGender;
}

String changeName(String name) {
this.newName = name;
return newGender;
}
//其他略……
public static void main(String[] args) throws Exception {
Test t = new Test();
FileReader fr = new FileReader("f:\\11.txt");
FileWriter wr = new FileWriter("f:\\22.txt");
BufferedReader br = new BufferedReader(fr);
String str = "";
while (br.ready()) {
str = br.readLine();
if (str.indexOf("gender") != -1) {
str = t.changeGender("gender: female");
}
//其他替换略
wr.write(str + "\r\n");
}
wr.flush();
}
}
dinghun8leech 2010-03-22
  • 打赏
  • 举报
回复
一行一行读,排成所需的顺序,重新写出来。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧