需求背景:多次向文件中依次写入内容,

需求分析:如何向文件中依次追加内容呢?而且不清空之前的内容。

今天就分享一下基于Java语言,如何在文件末尾追加内容。

import java.io.*;

public class AddContent2TxtLast {
/**
* "\\r\\n"用于换行
*
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// 可以是其它格式的文件
String pathName = "D:\\img\\test.txt";
String conent = "\r\n测试,把字符追加到文件末尾";
addContentPlus(pathName, conent);
conent = "\r\naddContent2TxtLast";
addContent2TxtLast(pathName, conent);
conent = "\r\nmethod2";
method2(pathName, conent);
} /**
* 追加文件内容:<p>
* 判断文件是否存在,不存在则创建<p>
* 使用FileOutputStream,在构造FileOutputStream时,把第二个参数设为true<p>
*
* @param pathName
* @param conent
*/
public static void addContentPlus(String pathName, String conent) throws IOException {
File file = new File(pathName);
// 判断文件不存在,返回
if (!judeFileExists(file)) {
return;
}
if (!file.exists()) {
file.createNewFile();
}
BufferedWriter out = null;
try {
out = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(file, true)));
out.write(conent);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
} /**
* 追加文件:使用FileOutputStream,在构造FileOutputStream时,把第二个参数设为true,表示在文件末尾追加
*
* @param pathName
* @param conent
* @throws IOException
*/
public static void addContent2TxtLast(String pathName, String conent) throws IOException {
FileOutputStream fos = new FileOutputStream(pathName, true);
fos.write(conent.getBytes());
fos.flush();
fos.close();//流要及时关闭
} /**
* 追加文件:使用FileWriter
*
* @param pathName
* @param content
*/ public static void method2(String pathName, String content) throws IOException {
FileWriter writer = null;
try {
// 打开一个写文件器,构造函数中的第二个参数true表示以追加形式写文件
writer = new FileWriter(pathName, true);
writer.write(content);
} catch (IOException e) {
e.printStackTrace();
} finally {
writer.flush();
writer.close();
} } // 判断文件是否存在
public static boolean judeFileExists(File file) {
if (file.exists()) {
System.out.println("File exists");
return Boolean.TRUE;
} else {
System.out.println("File not exists, please create it ...");
return Boolean.FALSE;
}
} }

如果遇到文件目录不存在的场景,请参考《当文件不存在时自动创建文件目录和文件》的解决策略。

Java 在文件末尾追加内容的更多相关文章

  1. java文件末尾追加内容的两种方式

    java 开发中,偶尔会遇到在文件末尾对文件内容进行追加,实际上有多种方式可以实现,简单介绍两种: 一种是通过RandomAccessFile类实现,另一种是通过FileWriter类来实现. 实现方 ...

  2. JAVA向文件中追加内容(转)

    向文件尾加入内容有多种方法,常见的方法有两种: RandomAccessFile类可以实现随机访问文件的功能,可以以读写方式打开文件夹的输出流 public void seek(long pos)可以 ...

  3. Java文件末尾追加字符串

    Java进行文件输出时,有时候想直接向已有文件末尾追加字符,而不是从头开始写,可以采用以下三种方式实现: package test; import java.io.File; import java. ...

  4. Linux 向文件末尾追加命令

    Linux 向文件末尾追加命令 //echo后边用单引号包围要添加的内容 echo 'add content'>>/home/data/test.sh 注意:>> 是追加 ec ...

  5. Java将文件中的内容转换为sql语句(和并发定时读取文件)

    数据文件内容data.txt {USER_TYPE=1,CREATE_USER=ZHANG,UPDATE_USER=li,OPER_NUM=D001,SRC=2,UPDATE_TIME=2018-11 ...

  6. Linux 使用echo向文件末尾追加命令

    //echo后边用单引号包围要添加的内容 echo 'add content'>>/home/data/test.sh 注意>>表示在原来的文件末尾上进行追加,如果使用的是&g ...

  7. 【FTP】java FTPClient 文件上传内容为空,文件大小为0

    问题:如题所述,使用FTPClient上传至FTP服务器, 表现如下:①文件大小为0 ②上传很小的文件,但是要花费很长的时间,20K要花费2分钟甚至更久 ③没有任何的报错,没有任何的乱码 解决方法: ...

  8. Java代码片段——向文件末尾添加内容

    BufferedWriter out = null; try { out = new BufferedWriter(new FileWriter(”filename”, true)); out.wri ...

  9. linux写文件,追加内容

    覆盖文件 echo "hello" > filename 追加文件 echo "haha" >> filename

  10. C#在txt类文件中追加内容

    string path = "test.txt"; FileStream mystream = new FileStream(path, FileMode.OpenOrCreate ...

随机推荐

  1. 分享4款.NET开源、免费、实用的商城系统

    前言 今天大姚给大家分享4款.NET开源.免费.实用的商城系统,希望可以帮助到有商城系统开发需求的同学. nopCommerce nopCommerce是一个.NET开源功能丰富.免费.灵活且可定制的 ...

  2. AI 实践|零成本生成SEO友好的TDK落地方案

    之前写过一篇文章「Google搜索成最大入口,简单谈下个人博客的SEO」,文章里介绍了网页的描述信息TDK(Title.Description和Keywords)对SEO的重要作用,尽管已经意识到了T ...

  3. FastAPI 核心机制:分页参数的实现与最佳实践

    title: FastAPI 核心机制:分页参数的实现与最佳实践 date: 2025/3/13 updated: 2025/3/13 author: cmdragon excerpt: 在构建现代W ...

  4. docker 中几个节点意外宕机 pxc 无法启动

    docker 意外宕机,PXC启动不了解决方法 由于 意外宕机 docker start pxc 节点后闪退,解决方法如下 从节点中找任意一个数据卷映射目录,修改参数 [root@izuf64gdeg ...

  5. C#/.NET/.NET Core技术前沿周刊 | 第 31 期(2025年3.17-3.23)

    前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...

  6. 【踩坑系列】使用httpclient调用第三方接口返回javax.net.ssl.SSLHandshakeException异常

    1. 踩坑经历 最近做了个需求,需要调用第三方接口获取数据,在联调时一直失败,代码抛出javax.net.ssl.SSLHandshakeException异常, 具体错误信息如下所示: javax. ...

  7. 接口中的成员特点、类和接口之间的各种关系--java进阶day02

    1.接口的成员特点 1.接口没有构造方法 接口没有构造方法,但是实现类中有构造方法,super()又该访问谁呢? 类实现接口只是认干爹,类本身还是会有亲爹Object,super()会访问Object ...

  8. 如何使用 OpenAI Agents SDK 构建 MCP

    1.概述 OpenAI Agents SDK 现已支持 MCP(模型上下文协议),这是 AI 互操作性的重大变革.这使开发人员能够高效地将 AI 模型连接到外部工具和数据源.本篇博客,笔者将指导使用 ...

  9. chatops

    ChatOps是什么? ChatOps, 简单地说,这是一种方法,允许团队以聊天室的方式来协作和管理其基础结构.代码和数据的许多方面.通过使用聊天机器人和脚本,团队可以执行命令.查询信息,并将知识分发 ...

  10. IP地址字符串转数组

    查看代码 static uint8_t ip_buf[4]; static uint8_t test_str[] = "192.168.1.123"; static uint8_t ...