c - 追加到 C 文件的末尾

标签 c file append fseek

我正在尝试将文件 myfile.txt 的内容 append 到 c 中的第二个文件 myfile2.txt 的末尾。我可以复制内容,但找不到追加的方法。这是我的代码:

FILE *pFile;
FILE *pFile2;
char buffer[256];

pFile=fopen("myfile.txt", "r");
pFile2=fopen("myfile2.txt", r+);
if(pFile==NULL) {
    perror("Error opening file.");
}
else {
    while(!feof(pFile)) {
        if(fgets(buffer, 100, pFile) != NULL) {
        fseek(pFile2, -100, SEEK_END);
        fprintf(pFile2, buffer);
    }
}
fclose(pFile);
fclose(pFile2);

我认为我没有正确使用 fseek,但我想做的是调用 fseek 将指针放在文件末尾,然后在该指针的位置而不是在文件的开头。这是正确的方法吗?

最佳答案

用追加打开:

pFile2 = fopen("myfile2.txt", "a");

然后只需写入pFile2,无需fseek()

关于c - 追加到 C 文件的末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19429138/

相关文章:

c - 如何获取包含字符串 "$Rx"的 char *,其中 'x' 是一个数字,并将 x 存储为一个整数?

尝试解析十六进制字符串时崩溃

c# - 如何在不读取整个文件的情况下找出文件有多少个字符?

C 从文本文件中读取单词

matlab - 如何在Matlab中定期向向量中插入元素

jquery - 使用 jquery ajax 将内容 append 到 div id

c - 关于c中struct深拷贝和浅拷贝的问题

c - 如何在 Win32 中为整个屏幕着色纯色

java - 为什么在 java 中使用 FileReader 时找不到我的文件

javascript - jQuery : Append a non-breaking space to content of Textarea