+ -
当前位置:首页 → 问答吧 → 怎么用c语言删除文件第一行

怎么用c语言删除文件第一行

时间:2011-12-23

来源:互联网

怎么删除txt文件的第一行

作者: djh512   发布时间: 2011-12-23

文件小的话,全部读进内存,然后把第二行开始的内容写回去。不然就一块一块往前移。

作者: luciferisnotsatan   发布时间: 2011-12-23

随手写一个,供参考:
C/C++ code

#include <stdio.h>
int main()
{
    FILE *fin,*fout;
    char buff[512];  
    
    fin=fopen("t.txt","r");
    fout=fopen("t.tmp","w");
  fgets(buff,512,fin);  //读一行
    while(!feof(fin))
    {
    fgets(buff,512,fin);  //读一行
    fputs(buff,fout);  //写一行
    }
    fclose(fin);
    fclose(fout);
    remove("t.txt");
    rename("t.tmp","t.txt");
    
}

作者: keiy   发布时间: 2011-12-23

打开->删除->保存

作者: leo_wanta   发布时间: 2011-12-23

该回复于2011-12-23 15:18:38被管理员删除

  • 对我有用[0]
  • 丢个板砖[0]
  • 引用
  • 举报
  • 管理
  • TOP
#5楼 得分:0回复于:2011-12-23 15:44:11
C/C++ code
#include <stdio.h>
void main() {
    FILE *fin,*fout;
    int c;

    fin=fopen("t.txt","r");
    fout=fopen("t.tmp","w");
    while (1) {
        c=fgetc(fin);
        if (EOF==c) break;
        if ('\n'==c) break;
    }
    if (EOF!=c)
    while (1) {
        c=fgetc(fin);
        if (EOF==c) break;
        fputc(c,fout);
    }
    fclose(fin);
    fclose(fout);
    remove("t.txt");
    rename("t.tmp","t.txt");
}


无论第一行有多长

作者: nnrroo   发布时间: 2011-12-23

好的 ~ 可行 谢谢

作者: zhao4zhong1   发布时间: 2011-12-23