當前位置:首頁 » 辦公資訊 » c怎樣讀取文件

c怎樣讀取文件

發布時間: 2022-02-05 05:27:34

① C語言如何讀取文件

文件流指針應打文件,要同操作兩文件,所要用兩文件流指針
,像要同操作兩箱.
程序理解:
兩箱,fp1,fp2;
打箱fp1,fp2,拿1024東西看,同放第二箱fp2,至箱東西完全拿,關閉兩箱.
例都差,看看stdlibf函數,C文件操作:
FILL
*pf;
//聲明指針,指針數組
FILE
pf[2]

FILE
**pf;
pf
=fopen();
fread()
or
fwrite()
...
...
//操作文件
fclose(pf)
//關閉文件

② c語言 如何讀取本地文本文件

右鍵點擊那個TXT文件,重命名講尾綴改為.c 打開就可以了 或者不打開 將VC打開 點擊打開文件 找到這個修改了後綴的文件打開就可以了

③ C語言文件的文本怎麼讀取

根據你給的文件保存的數據的格式,我猜測每一行是一個學生的信息,格式如下:

序號 姓名 成績1 成績2 成績3 ...

知道了題意和題目要求,那麼一切將會變得簡單起來,請看代碼。

#include<stdio.h>

#defineREAD_FILE"data.txt"/*要讀取的文件的名字*/
#defineWRITE_FILE"T_data.txt"/*要寫入的文件的名字*/
#defineSTU_NUM10/*最大學生人數*/
#defineMAX_LEN50/*一行的最大字元數*/
/*
*獲取總分函數
*/
intget_sum(charconst*msg){

intsum=0;
inttmp;
/*
*遍歷一行字元
*/
while(*msg!=''){

/*
*以空格為一項成績的分隔標志
*/
tmp=0;
while(*msg!=''&&*msg!=''){
/*
*char類型數字轉int類型數字
*/
tmp=(tmp*10)+((*msg)-'0');
msg++;
}
/*
*求總和
*/
sum+=tmp;
if(*msg==''){

break;
}
msg++;
}
returnsum;
}

intmain(void){

FILE*rfp,*wfp;/*聲明讀取/寫入文件指針*/
charstudent[STU_NUM][MAX_LEN];/*存放讀取到的數據緩存數組*/
charch;
intsum[STU_NUM];/*成績總和*/
inti=0;
intj=0;
intk=0;
rfp=fopen(READ_FILE,"r");/*打開數據文件*/
if(rfp==NULL){

perror(READ_FILE);
exit(1);
}
for(i=0;i<STU_NUM;i++){

sum[i]=0;
}
/*
*逐個字元讀取文件的內容,
*直至遇到文件結束符為止。
*/
i=0;
while((ch=fgetc(rfp))!=EOF){
/*
*遇到換行符表示已經讀取完一個學生的資料;
*否則繼續將數據寫入緩存數組中。
*/
if(ch==' '){

student[i][j]='';
j=0;
i+=1;
}else{

student[i][j++]=ch;
}
}
student[i][j]='';
wfp=fopen(WRITE_FILE,"w");
/*
*開始分析數據
*根據文件存放數據的格式,從下標為2的位置開始分析數據。
*當遇到空格時證明後面的數據是成績,每一科成績分數均以空格分開。
*printf是顯示出來。
*fprintf是寫入另一個文件。
*/
for(j=0;j<=i;j++){

k=2;
printf("%c%c",student[j][0],student[j][1]);
fprintf(wfp,"%c%c",student[j][0],student[j][1]);
while(student[j][k]!=''){

printf("%c",student[j][k]);
fprintf(wfp,"%c",student[j][k]);
k++;
}
printf("'ssumofscoresumis");
fprintf(wfp,"'ssumofscoresumis");
sum[j]=get_sum(&student[j][k]);
printf("%d ",sum[j]);
fprintf(wfp,"%d ",sum[j]);
}
/*
*記得關閉文件哦。
*/
fclose(rfp);
fclose(wfp);
return0;
}

以下是運行結果:

這個程序僅僅是針對你的題目要求來的,文件存放的數據格式不能更改,否則會出錯。每一行必須以回車鍵結束,最後一行的最後一個字元之後什麼也不能有。我盡量以你看得懂的方法來寫,關鍵部分都帶有注釋,有問題不要追問了,自己多思考思考,實在解決不來還是很歡迎可以追問的哦,哈哈哈!!!

④ 如何用c讀取文件

應該用fscanf()函數來讀取
下面給個小例子:
保存代碼時,以.C為後綴名.用VC6.0編譯(TC2.0也可,但不能顯示漢字)
用VC6.0編譯時,不能點"!"來運行程序,因為這樣程序是不能建立文件的.
應該在Debug文件夾裡面再運行程序(VC6.0編譯程序時,生成的可執行文件放在Debug文件夾裡面,裡面要有"成績.txt"文件)
#include<stdio.h>
#include<conio.h>
void ReadStudentDataToFile(void);
void main()
{
ReadStudentDataToFile();
getch();
}
void ReadStudentDataToFile(void)
{
FILE *fp;
float data;
fp=fopen("成績.txt","r");
if(!fp)
{
printf("不能打開文件\n");
return;
}
while(fscanf(fp,"%f",&data)>0)/*顯示所有的成績*/
{
printf("%f\t",data);
}
fclose(fp);
}

⑤ C語言如何實現對txt文件的讀取和寫入

1、使用VS新建空工程,直接點擊確定,如下所示。

⑥ c語言如何讀取文件

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
int times;
int num[100];
cout<<"請輸入您要輸入的數字的個數:";
cin>>times;
//cout<<"您剛才輸入的數字為:"<<times<<endl;
for (int i=0;i<times;i++)
{

cout<<"請輸入第"<<i+1<<"個數字:";
cin>>num[i];
//cout<<"您輸入的數字為:"<<num<<endl;

FILE* file=fopen("num.bin","ab");//追加打開二進制文件
fwrite(&num[i],sizeof(int),1,file);
fclose(file);
}
cout<<endl<<"文件num.bin已保存。您剛才輸入的數字已自動添加到該文件末尾。"<<endl;
cout<<"請注意:該文件為二進制文件。"<<endl;
////////////////////////////////////讀文件
cout<<"num.bin文件中num[i]的值如下:"<<endl;
for(int j=0;j<times;j++)
{
FILE* fp=fopen("num.bin","ab");//追加打開二進制文件;
fwrite(&num[j],sizeof(int),1,fp);
cout<<"您之前輸入的第"<<j+1<<"個數字為:"<<num[j]<<endl;
fclose(fp);
}

return 0;
}

//朋友,你可能沒有明白fread 和fwrite 的作用,他們的作用是將數據塊中的變數的值保存起來,到用時再拿出來引用!,而你的寫入函數,雖然能運行,但毫無意義科為,只是將num的值,不停地存儲了times次,而且一直都在更換num的值

還望仔細品味一下!!!!!!

==========================================================Mr_Computer

⑦ c語言讀取文本文件

1、C語言標准庫提供了一系列文件操作函數。文件操作函數一般以f+單詞的形式來命名(f是file的簡寫),其聲明位於stdio.h頭文件當中。例如:fopen、fclose函數用於文件打開與關閉;fscanf、fgets函數用於文件讀取;fprintf、fputs函數用於文件寫入;ftell、fseek函數用於文件操作位置的獲取與設置。
2、常式:

#include<stdio.h>
inta;
charb,c[100];
intmain(){
FILE*fp1=fopen("input.txt","r");//打開輸入文件
FILE*fp2=fopen("output.txt","w");//打開輸出文件
if(fp1==NULL||fp2==NULL){//若打開文件失敗則退出
puts("不能打開文件!");
rturn0;
}
fscanf(fp1,"%d",&a);//從輸入文件讀取一個整數
b=fgetc(fp1);//從輸入文件讀取一個字元
fgets(c,100,fp1);//從輸入文件讀取一行字元串

printf("%ld",ftell(fp1));//輸出fp1指針當前位置相對於文件首的偏移位元組數

fputs(c,fp2);//向輸出文件寫入一行字元串
fputc(b,fp2);//向輸出文件寫入一個字元
fprintf(fp2,"%d",a);//向輸出文件寫入一個整數

fclose(fp1);//關閉輸入文件
fclose(fp2);//關閉輸出文件,相當於保存
return0;
}

⑧ c語言 如何相對快速的讀取文件

1、一次性把文件讀入到內存當中,直接對內存進行操作。這樣總的運行時間會比一邊讀文件一邊操作的時間要少。

2、步驟:

1)驗證該文件是否存在,並獲取文件大小;

2)根據文件大小申請一個足夠大的緩沖(假定內存足夠的話);

3)fread將整個文件裝入緩沖;

4)對緩存進行操作。

常式:

#include<stdio.h>
#include<string.h>
intmain(void)
{
FILE*stream;
charbuf[2000];//字元數組作為緩存
if((stream=fopen("文件.txt","r"))==NULL)//打開文件
{
fprintf(stderr,"Cannotopenoutputfile. ");
return0;
}
fread(buf,sizeof(buf),1,stream);//讀取文件內容到緩存當中
printf("%s ",buf);
//直接對緩存進行操作
fclose(stream);
return0;
}

⑨ C語言如何讀取文件

C語言讀取文件的具體步驟如下:

我們需要准備的材料分別是:電腦、C語言。

1、首先我們打開需要讀取的文件,點擊打開左上角文件中的「另存為」。

⑩ c語言中怎麼讀取一個磁碟文件

由於\為轉義字元,所以對於目錄分割符\需要寫兩個\字元,即\\。讀取為:
fopen("F:\\test\\test.txt", "r");

熱點內容
馬路上汽車的噪音在多少分貝 發布:2023-08-31 22:08:23 瀏覽:1761
應孕棒多少錢一盒 發布:2023-08-31 22:08:21 瀏覽:1252
標准養老金一年能領多少錢 發布:2023-08-31 22:05:05 瀏覽:1538
湖北通城接網線多少錢一個月 發布:2023-08-31 21:59:51 瀏覽:1617
開隨車吊車多少錢一個月 發布:2023-08-31 21:55:06 瀏覽:1378
京東付尾款怎麼知道前多少名 發布:2023-08-31 21:52:58 瀏覽:1699
在學校租鋪面一個月要多少錢 發布:2023-08-31 21:52:09 瀏覽:1833
2寸有多少厘米 發布:2023-08-31 21:50:34 瀏覽:1472
知道電壓如何算一小時多少電 發布:2023-08-31 21:46:20 瀏覽:1457
金手鐲54號圈周長是多少厘米 發布:2023-08-31 21:44:28 瀏覽:1630