c語言刪除文件的指定行,更新文件


有時候我們需要刪除文件的某一行,來更新文件,在這我個人擴展了一個函數,以刪除指定條件的行。

 1 static void UpdateHistoryFile(void)
 2 {
 3     FILE *fin,*fout;
 4     int counter = 1;
 5     STest test;
 6  
 7     do
 8     {
 9         fin=fopen("test.txt","r");
10         fout=fopen("t.tmp","w");
11  
12         while(readHistoryFile(fin, &test) != EOF)
13         {
14             if (test.b == 20160516) // to add the judgement case.
15             {
16                 printf("test.b < 20160516\n");
17             }
18             else
19             {
20                 test.a = counter;
21                 writeHistoryFile(fout, test);
22                 counter++;
23             }
24         }
25         
26         fclose(fin);
27         fclose(fout);
28  
29         remove("test.txt");
30         rename("t.tmp","test.txt");
31     }while(0);
32     
33     return;
34 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM