java覆盖文件内容_在java中覆盖txt文件

我写的代码应该覆盖所选文本文件的内容,但它会附加它。我做错了什么?

File fnew=new File("../playlist/"+existingPlaylist.getText()+".txt");

String source = textArea.getText();

System.out.println(source);

FileWriter f2;

try {

f2 = new FileWriter(fnew,false);

f2.write(source);

/*for (int i=0; i

{

if(source.charAt(i)=='\n')

f2.append(System.getProperty("line.separator"));

f2.append(source.charAt(i));

}*/

f2.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

编辑

我尝试制作一个新的temp.txt文件并写入新内容,删除此文本文件,并将temp.txt重命名为此文件。事情是,删除总是不成功。我不认为我必须更改这个用户权限吗?

另外,我的程序的一部分列出了这个目录中的所有文件,所以我猜这个程序被使用,所以不能被删除。但为什么不覆盖?

解决了

我最大的“D”哦!我已经在Eclipse中编译它,而不是我正在执行它的cmd。所以我的新编译的类去了bin文件夹,编译的类文件通过命令提示符在我的src文件夹中保持不变。我重新编译了我的新代码,它的作用就像一个魅力。

File fold=new File("../playlist/"+existingPlaylist.getText()+".txt");

fold.delete();

File fnew=new File("../playlist/"+existingPlaylist.getText()+".txt");

String source = textArea.getText();

System.out.println(source);

try {

FileWriter f2 = new FileWriter(fnew, false);

f2.write(source);

f2.close();

} catch (IOException e) {

e.printStackTrace();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值