c語言文件寫入數據
① 用c語言創建一個txt文件,並且寫入數據
#include <stdio.h>
int main()
{
//下面是寫數據,將數字0~9寫入到data.txt文件中
FILE *fpWrite=fopen("data.txt","w");
if(fpWrite==NULL)
{
return 0;
}
for(int i=0;i<10;i++)
fprintf(fpWrite,"%d ",i);
fclose(fpWrite);
//下面是讀數據,將讀到的數據存到數組a[10]中,並且列印到控制台上
int a[10]={0};
FILE *fpRead=fopen("data.txt","r");
if(fpRead==NULL)
{
return 0;
}
for(int i=0;i<10;i++)
{
fscanf(fpRead,"%d ",&a[i]);
printf("%d ",a[i]);
}
getchar();//等待
return 1;
}
(1)c語言文件寫入數據擴展閱讀:
c語言最常用的文件使用方式及其含義
1、"r".為讀而打開文本文件.(不存在則出錯)
2、"rb".為讀而打開二進制文件.
3、"w".為寫而打開文本文件.(若不存在則新建,反之,則從文件起始位置寫,原內容將被覆蓋)
4、"wb".為寫而打開二進制文件.
5、"a".為在文件後面添加數據而打開文本文件.(若不存在,則新建;反之,在原文件後追加)
6、"ab".為在文件後面添加數據而打開一個二進制文件.
7、"r+".為讀和寫而打開文本文件.(讀時,從頭開始;在寫數據時,新數據只覆蓋所佔的空間,其後不變)
8、"rb+".為讀和寫而打開二進制文件.只是在隨後的讀寫時,可以由位置函數設置讀和寫的起始位置.
9、"w+".首先建立一個新文件,進行寫操作,隨後可以從頭開始讀.(若文件存在,原內容將全部消失)
10、"wb+".功能與"w+"同.只是在隨後的讀寫時,可以由位置函數設置讀和寫的起始位置.
11、"a+".功能與"a"相同;只是在文件尾部添加新的數據後,可以從頭開始讀.
12、"ab+".功能與"a+"相同;只是在文件尾部添加新數據之後,可以由位置函數設置開始讀的起始位置.
參考鏈接來源:網路-C語言
② 如何用c語言實現文件先寫入部分數據,然後再讀取輸出在屏幕上
文件先寫入部分數據,然後再讀取輸出在屏幕上,所以,在打開文件時必須以可讀寫方式"+"打開文件。(r+ w+ a+均可)
寫完後,再讀。因此,要把文件指針前移才可以,否則當前位置處在已寫完的數據位置,無法讀到數據。
參考代碼:
#include<stdio.h>
intmain()
{
FILE*fp;
charread[1000];
char*p="hello";
chars=' ';
if((fp=fopen("data.txt","a+"))==NULL)//追加方式,可讀可寫
{
printf(" Openfileerror!pressanykeyexit!");
return-1;
}
fputs(p,fp);//寫一個串hello
fputc(s,fp);//寫一個回車符
fputs(p,fp);//再寫一個串hello
fseek(fp,-5,SEEK_CUR);//從當前位置,向前移動5個位元組文件指針
fgets(read,1000,fp);//讀取數據
printf("%s",read);//得到hello
fclose(fp);
return0;
}