我正在尝试将文件myfile.txt的内容附加到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 - append 到C中文件的末尾,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19429138/

10-11 04:25