java file类 创建文件 如何不覆盖已存在文件

Filef=newFile("f:/C.txt");重复创建的话覆盖了已有文件。... File f=new File("f:/C.txt"); 重复创建的话覆盖了已有文件。 展开
 我来答
匿名用户
推荐于2017-09-01
展开全部
        File f = new File("f:/C.txt");

        try {
            FileWriter fw = new FileWriter(f);
            fw.append("abc");
            fw.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

添加内容用append,new File()命令是没有覆盖功能的。所以我可能还没理解你的意思,毕竟一个目录只能存有一个同名的文件。

追问
重复创建不会覆盖吗?那可能是我其他地方写错了。
另外,我这段代码会覆盖吗?
BufferedWriter bw = new BufferedWriter(fw);
bw.write(str1.substring(88, b)+"\r\n");
追答
你应该用 bw.append()方法。这个方法是内容追加在末尾呢。
因为write是会把内容覆盖的。但是不是把文件覆盖。
你应该搞清楚这个概念。
偶滴翠花悠悠0f
2017-08-31
知道答主
回答量:34
采纳率:0%
帮助的人:9.7万
展开全部
File f=new File("f:/C.txt",true);
这样试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友200b114
2015-09-07 · TA获得超过261个赞
知道小有建树答主
回答量:324
采纳率:66%
帮助的人:174万
展开全部
File file= new File("D:\\abv.txt");
if (!file.exists()){
//不存在则创建
file.createNewFile();
}else{
System.out.println("文件已存在");
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式