不知道LZ的具体需求 可以生成一个临时文件保存修改的内容,退出程序时删除原来的文件,并把临时文件改名 for example File org = new File("test.txt"); File bak = new File("test.txt.bak"); BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(org))); PrintStream ps = new PrintStream(new FileOutputStream(bak)); String buf = null; while ((buf=br.readLine()) != null) { //add, modify, delete, so on, ps.println(buf); } br.close(); ps.close(); org.delete(); if (! org.exists()) { bak.renameTo(org); }
如果txt文件不大。就完全可以全部加载到内存中去。然后用StringBuffer或者StringBuilder来进行增删该。然后保存到txt中去。如果资源文件太大。只能对一部分操作一部分了。对于前者。说实话简单。你在研究的话,估计你也会。对于后者。我是不会滴。我只会用用别人写好的库类操作XML文件了。深表遗憾。
还有这个,你也可以看看
http://sourceforge.net/projects/telnetd/
可以生成一个临时文件保存修改的内容,退出程序时删除原来的文件,并把临时文件改名
for example
File org = new File("test.txt");
File bak = new File("test.txt.bak");
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(org)));
PrintStream ps = new PrintStream(new FileOutputStream(bak));
String buf = null;
while ((buf=br.readLine()) != null) {
//add, modify, delete, so on,
ps.println(buf);
}
br.close();
ps.close();
org.delete();
if (! org.exists()) {
bak.renameTo(org);
}
http://blog.csdn.net/yaowenqian99/article/details/5403694
public class Lian {
public static void main(String [] args) throws IOException {
File org = new File("c:/old.txt");
File bak = new File("c:/new.txt");
org.createNewFile();
bak.createNewFile();
InputStreamReader in= new InputStreamReader(new FileInputStream(org));
BufferedReader br = new BufferedReader(in);
PrintStream ps = new PrintStream(new FileOutputStream(bak));
String buf = null;
while ((buf=br.readLine()) != null) {
ps.println(buf);
}
br.close();
ps.close();
org.delete();
if (! org.exists()) {
bak.renameTo(org);
}
}
}