追加内容到文件末尾

本文介绍了三种方法用于将内容追加到文件末尾:使用FileOutputStream、FileWriter和RandomAccessFile。通过示例代码展示了如何实现文件追加操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import java.io.BufferedWriter;  
import java.io.FileOutputStream;  
import java.io.FileWriter;  
import java.io.IOException;  
import java.io.OutputStreamWriter;  
import java.io.RandomAccessFile;  
  
/** 
 * 描述:追加内容到文件末尾 
 * @author Administrator 
 * 
 */  
public class WriteStreamAppend {  
    /** 
     * 追加文件:使用FileOutputStream,在构造FileOutputStream时,把第二个参数设为true 
     *  
     * @param fileName 
     * @param content 
     */  
    public static void method1(String file, String conent) {  
        BufferedWriter out = null;  
        try {  
            out = new BufferedWriter(new OutputStreamWriter(  
                    new FileOutputStream(file, true)));  
            out.write(conent);  
        } catch (Exception e) {  
            e.printStackTrace();  
        } finally {  
            try {  
                out.close();  
            } catch (IOException e) {  
                e.printStackTrace();  
            }  
        }  
    }  
  
    /** 
     * 追加文件:使用FileWriter 
     *  
     * @param fileName 
     * @param content 
     */  
    public static void method2(String fileName, String content) {  
        try {  
            // 打开一个写文件器,构造函数中的第二个参数true表示以追加形式写文件  
            FileWriter writer = new FileWriter(fileName, true);  
            writer.write("\n"+content);  
            writer.close();  
        } catch (IOException e) {  
            e.printStackTrace();  
        }  
    }  
  
    /** 
     * 追加文件:使用RandomAccessFile 
     *  
     * @param fileName 
     *            文件名 
     * @param content 
     *            追加的内容 
     */  
    public static void method3(String fileName, String content) {  
        try {  
            // 打开一个随机访问文件流,按读写方式  
            RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw");  
            // 文件长度,字节数  
            long fileLength = randomFile.length();  
            // 将写文件指针移到文件尾。  
            randomFile.seek(fileLength);  
            randomFile.writeBytes(content);  
            randomFile.close();  
        } catch (IOException e) {  
            e.printStackTrace();  
        }  
    }  
  
    public static void main(String[] args) {  
        System.out.println("start");  
        method2("c:/test.txt", "追加到文件的末尾");  
        System.out.println("end");  
    }  
  
}  

### 不同环境下的文件末尾内容追加 #### Windows 和 Linux 下使用命令行工具 在Windows和Linux环境下,可以利用简单的命令行指令完成向文件末尾追加内容的任务。对于这两种操作系统而言,`echo` 命令配合重定向符号 `>>` 可以轻松达成目的[^1]。 ```bash echo "新添加的内容" >> 文件路径.txt ``` 这条命令会把字符串 `"新添加的内容"` 添加至指定文本文件的最后一行之后。如果该文件不存在,则会被创建出来。 #### Python 编程语言中的实现方式 Python 提供了一种便捷的方法用于处理文件操作,在此情况下可采用 `'a'` 或者 `'a+'` 模式打开文件来进行追加写入。当以这种方式打开文件时,指针自动定位到文件结尾处准备写入新的数据[^4]。 ```python with open('example.txt', 'a') as file: file.write('\n这是附加的一句话') ``` 上述代码片段展示了如何通过上下文管理器 (`with`) 打开名为 `example.txt` 的文件,并在其现有内容后面加上一句新的话。注意这里使用的换行符 `\n` 是为了确保新增的文字不会紧贴着前一条记录显示。 #### C 语言中的解决方案 C 语言同样支持类似的文件追加功能,这通常涉及到标准库函数如 `fopen()` 来设置访问模式为 `"a"` 或 `"ab"` (二进制形式)[^3]。一旦成功打开了目标文件并设置了正确的权限位,就可以调用诸如 `fprintf()` 或其他 I/O 函数执行实际的数据写入动作了。 ```c #include <stdio.h> int main(void){ FILE *fp; fp = fopen("output.txt", "a"); fprintf(fp, "\n这是另一条要加入的信息."); fclose(fp); } ``` 这段程序先声明了一个指向 `FILE` 类型的指针变量 `fp` ,接着尝试以追加模式打开叫做 `output.txt` 的文件。随后它打印出一段消息给定位于文件末端的位置,最后关闭文件流结束整个过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值