Java在File尾部追加数据的两种方法

简介: package cn.com; import java.io.FileWriter; import java.io.RandomAccessFile; //问题描述: //在文件的末尾追加内容 //方法1:利用RandomAccess...
package cn.com;
import java.io.FileWriter;
import java.io.RandomAccessFile;
//问题描述: 
//在文件的末尾追加内容
//方法1:利用RandomAccessFile类
//1将randomAccessFile模式设置为rw
//2将randomAccessFile移动(seek)到文件末尾
//3追加数据
//4关闭流

//方法2:利用FileWriter类
//1将FileWriter构造方法第二个参数置为true.表示在尾部追加
//2追加数据
//3关闭流
public class FileTest {
	public static void main(String[] args) {
		FileTest fileTest = new FileTest();
		fileTest.addContentFirst("F:\\temp.txt", "test1");
		fileTest.addContentSecond("F:\\temp.txt", "test2");
	}

	public void addContentFirst(String filePath, String newContent) {
		try {
			RandomAccessFile randomAccessFile=new RandomAccessFile(filePath, "rw");
			long fileLength=randomAccessFile.length();
			randomAccessFile.seek(fileLength);
			randomAccessFile.write(newContent.getBytes("UTF-8"));
			randomAccessFile.close();
		} catch (Exception e) {
		}
	}

	public void addContentSecond(String filePath, String newContent) {
        try {
			FileWriter fileWriter=new FileWriter(filePath, true);
			fileWriter.write(newContent);
			fileWriter.close();
		} catch (Exception e) {
		}
	}
}

相关文章
|
10天前
|
Java API
Java 对象释放与 finalize 方法
关于 Java 对象释放的疑惑解答,以及 finalize 方法的相关知识。
34 17
|
4天前
|
Java 测试技术 Maven
Java一分钟之-PowerMock:静态方法与私有方法测试
通过本文的详细介绍,您可以使用PowerMock轻松地测试Java代码中的静态方法和私有方法。PowerMock通过扩展Mockito,提供了强大的功能,帮助开发者在复杂的测试场景中保持高效和准确的单元测试。希望本文对您的Java单元测试有所帮助。
9 2
|
5天前
|
Java 编译器 Maven
Java“class file contains wrong class”解决
当Java程序运行时出现“class file contains wrong class”错误,通常是因为类文件与预期的类名不匹配。解决方法包括:1. 确保类名和文件名一致;2. 清理并重新编译项目;3. 检查包声明是否正确。
|
6天前
|
SQL Java OLAP
java实现“数据平滑升级”
java实现“数据平滑升级”
22 2
|
11天前
|
SQL Java 关系型数据库
java连接mysql查询数据(基础版,无框架)
【10月更文挑战第12天】该示例展示了如何使用Java通过JDBC连接MySQL数据库并查询数据。首先在项目中引入`mysql-connector-java`依赖,然后通过`JdbcUtil`类中的`main`方法实现数据库连接、执行SQL查询及结果处理,最后关闭相关资源。
|
12天前
|
Java 开发者
在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口
【10月更文挑战第20天】在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口。本文揭示了这两种方式的微妙差异和潜在陷阱,帮助你更好地理解和选择适合项目需求的线程创建方式。
12 3
|
12天前
|
Java 开发者
在Java多线程编程中,选择合适的线程创建方法至关重要
【10月更文挑战第20天】在Java多线程编程中,选择合适的线程创建方法至关重要。本文通过案例分析,探讨了继承Thread类和实现Runnable接口两种方法的优缺点及适用场景,帮助开发者做出明智的选择。
11 2
|
12天前
|
安全 Java
Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧
【10月更文挑战第20天】Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧,包括避免在循环外调用wait()、优先使用notifyAll()、确保线程安全及处理InterruptedException等,帮助读者更好地掌握这些方法的应用。
11 1
|
5天前
|
Java Spring
JAVA获取重定向地址URL的两种方法
【10月更文挑战第17天】本文介绍了两种在Java中获取HTTP响应头中的Location字段的方法:一种是使用HttpURLConnection,另一种是使用Spring的RestTemplate。通过设置连接超时和禁用自动重定向,确保请求按预期执行。此外,还提供了一个自定义的`NoRedirectSimpleClientHttpRequestFactory`类,用于禁用RestTemplate的自动重定向功能。
|
7天前
|
SQL Java OLAP
java实现“数据平滑升级”
java实现“数据平滑升级”
6 0