① 關於文件的操作~ 從文件中刪除數據
#include <stdio.h>
#include <malloc.h>
#include <string.h>
#include <memory.h> // TC 2.0 應該是#include <mem.h>
void delet(FILE *fp)
{
int i=0;
char a[20];
struct person b[20];
memset(b, 0, sizeof(person) * 20);
printf("請輸入你要刪除的用戶: \n");
scanf("%s", &a);
fp = fopen("file", "rb");
if (fp == NULL)
{
printf("找開文件失敗\n");
return;
}
fread(&b, sizeof(struct person), 20, fp);//這里從文件中讀出的數據放入數組中,
for(int k=0; k<20; k++) //為什麼沒完全讀出文件中的數據?
printf("%s", b[k].user);
fclose(fp);
for(i = 0; i < 20; i++) //在數組中刪除所以刪除的數據
{
if (b[i].user == a)
{
for (int j=i; j<20; j++)
{
b[j] = b[j+1];
}
}
}
fp = fopen("file", "wb");
if (fp == NULL)
{
printf("找開文件失敗\n");
return;
}
fwrite(b, sizeof(struct person), 20, fp); //把數據存迴文件中
fclose(fp);
}
② C語言操作文件時怎麼清空之前的數據
要想清空的話
只需要以"w"形式打開就可以了
FILE * fp = fopen(FILE_PATH_AND_NAME, "w");
不管原本文件是否存在,都會清空掉。
不清空的話就用「a」
③ 用fopen()函數中的wb+重新創建文件後怎麼判斷文件內容為空
1.根據getc返回值判斷,但是要注意getc返回 非EOF 後要用fseek重新定位文件讀寫位置,再進行相應的讀寫操作
2.可用fseek()將讀指針移到文件末端,然後ftell()一下,根據文件長度確定文件是否為空
④ c語言中,怎麼樣把文件中的內容清空
直接把文件變成空文件 也就是大小為0那種嗎?
直接以寫方式打開文件然後直接關閉 這樣就可以了
voidempty_file(char*fname)
{
FILE*fp;
fp=fopen(fname,"w");//以只寫方式打開文件時其實就是創建了一個新文件(空的)。如果本來存在文件,也同樣會被覆蓋
if(fp==NULL)
printf("doemptyfile%sfailed ",fp);
elsefclose(fp);
}
⑤ 如何每次寫入文件時清空文件內容
如果你想在已存在的txt內追加內容的話,應該使用a而非w。 w 打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。 w+ 打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。
⑥ 如何在c語言中清空文件里的內容(很急)
在c語言中清空文件里的內容的代碼:
示例:
#include "
stdio.h"
main()
{FILE *fp;
if(fp=fopen("要清空的件","w+")==NULL)/*以寫的方式打開已經存的文件相當於是答清空。*/
{printf("Error.");
getch();
exit(0);}
fclose(fp);
(6)fopenwb清空文件嗎擴展閱讀
C語言remove()函數:刪除文件或目錄
clude<stdio.h>
int main(){
charfilename[80];
printf("Thefiletodelete:");
gets(filename);
if(remove(filename)==0)
printf("Removed%s.",filename);
else
perror("remove");
}
⑦ c語言中有沒有清空文件的函數
fclose(fp);當然不行,它不是清除文件而是關閉文件。fp=fopen("a.txt","w");肯定清除當前目錄下名為a.txt文件的內容,只留下一個文件名——你說沒有清除那隻是路徑沒有寫全——我的工作代碼就這樣用著:每月1號0點自動清除上月記錄,開始本月新記錄。如果你說的是連文件名都清除的函數,那叫刪除文件,有個函數叫remove(FILE *);,你可以一試。
⑧ c 語言如何 清空文件內容
FILE *fp;
fp=fopen("filename","wb");
...
fclose(fp);
⑨ 怎樣清空電腦中的所有文件
可以採取格式化的辦法。如果是windows操作系統中,可以在「程序」中找到「系統」,其中就有格式化的選項。
這里的格式化,其實還是所謂的「高級格式化」,通過一般的軟體,是可以恢復其中的資料的。要想徹底些,或者針對某些頑固的病毒,就必須使用「低級格式化」的辦法。低格可以比較徹底的清除電腦中的信息。
不過要提醒的是,對於專業人員來說,低格後,還是可以讀出其中的一些信息的。如果不想讓信息泄露,最徹底的辦法是把硬碟徹底毀損,從物理上破壞硬碟。