A. c語言中怎樣實現多個文件的循環讀入
while(!feof(fp))
{
fgets(s,20,fp);
}
要分別打開的
B. 怎麼用C語言實現多個文件進行匯總到一個文件功能
看你的匯總依據了。
如果不需要數據處理
只是單純性的集合起來
那麼可依次打開每個文件,然後寫入到一個新文件中。
如果需要數據處理
就需要先打開一個文件,提取並統計需要匯總的數據
再打開第二個,提取,並疊加到第一個的數據上
以此類推
最後一次性寫入。
這個要麻煩的多。
C. 請問C語言中一次操作多個文件該如何做
(1)
用 system("dir /b > abc.lis");
把文件名存入abc.lis
(2)打開文件abc.lis
打開輸出文件 nameout
(3)從abc.lis 里讀一個文件名到 namein --(FILE *fin)
(4)打開 namein 文件
(5) 讀和處理namein,輸出部分到 nameout -- FILE *fout)
(6)關掉 namein 文件
(7) 轉 3,循環到 6
如果abc.lis 文件讀到 EOF 則 結束
(8)關掉 輸出文件和 abc.lis 文件
程序結束
D. 如何用C語言對多個文件數據循環處理
#include
int
main()
{
int
data[100];
int
i=1;
FILE
*fp=NULL;
char
filename[10];
for(int
i=1;i<=100;i++)
{
memset(filename,0,sizeof(filename));
itoa(i,filename,10);//將整型i轉成對應的字元串形式
strcat(filename,".txt");//這樣filename就是當前的文件了
if(fp=fopen(filename,"r"))==NULL)
return
-1;
//讀取你想要的內容到data,可以用fscanf等函數
fclose(fp);
}
fp=fopen("out.txt","w");
if(fp==NULL)
return
-1;
//寫到out.txt中,用fprintf函數即可
fclose(fp);
return
0;
}
E. c語言中如何同時運行多個源文件
1、將一個函數寫在一個文件里,然後再在另一個文件里用「include」包含這個文件。
2、舉個例子
在文件c1.c里編一個函數:
void
printWord(){
printf("Hello!world!");
}
再建立一個文件c2.c,文件開頭寫上#include"c1.c",就可以調用c1.c里的函數printword()了
這樣通過include操作,可以把任意多個文件連接起來,編譯成一個程序運行。
F. 如何用c語言連續讀一個文件夾里的多個文本文件
先把各個文件都存儲(即合並)在一個
字元數組
里,然後就把數組輸出即可。注意數組在存儲時,指針在存儲後要指向數組末尾,不然數組將被覆蓋……
G. C語言,如何用循環讀入多個文本文件
下面的代碼是剛剛給你寫好的,文件名僅限"a.txt" "b.txt"和"c.txt"#include"stdio.h"
#include"stdlib.h"
int main(void)
{
FILE *fp;
char filename[]="a.txt";
int i;
void *p[3];
long filelen;
for(i=0;i<3;i++)
{
fp=fopen(filename,"rb");
if(!fp){printf("\"%s\"文件打開失敗\n",filename);continue;}
fseek(fp,0,2);
filelen=ftell(fp);
fseek(fp,0,0);
p[i]=malloc((filelen+1)*sizeof(char));
fread(p[i],filelen*sizeof(char),1,fp);
*((char *)p[i]+filelen)='\0';
fclose(fp);
filename[0]++;
}
for(i=0;i<3;i++)puts(p[i]);
return 0;
}
H. c語言如何循環打開多個文件(文件名有規律,是「0 (1)」 「0 (2)」............)
char filenames[3][15]={"/1.bmp", "/2.bmp", "/3.bmp"}; Lcd_show_bmp(0, 0, filenames[0]); Lcd_show_bmp(0, 0, filenames[1]); Lcd_show_bmp(0, 0, filenames[2]);
I. 如何用C語言循環讀取文件內容
循環讀取一個文件的內容。
這樣做沒有任何意義,不如把讀取的內容保持在變數當中,節省空間時間。如果非要反復讀取的話可以使用rewind函數把文件指針重置。
函數名: rewind()
功 能: 將文件內部的位置指針重新指向一個流(數據流/文件)的開頭
注意:不是文件指針而是文件內部的位置指針,隨著對文件的讀寫文件的位置指針(指向當前讀寫位元組)向後移動。而文件指針是指向整個文件,如果不重新賦值文件指針不會改變。rewind函數作用等同於 (void)fseek(stream, 0L, SEEK_SET);循環讀取多個文件的內容。
把多個文件名存在一個字元串數組當中。使用循環語句反復打開-讀取-關閉即可。
例如:
char*s[3]={"文件一","文件二","文件三"};
for(i=0;i<3;i++){
f=fopen(s[i]);//打開第i個文件
//讀取數據
fclose(f);//關閉文件
}
J. C語言遍歷目錄中的文件
使用dir.h庫的兩個函數即可:findfirst和findnext。
首先調用findfirst函數查找是否有滿足條件的某目錄文件,如果返回值非0則表示找不到返回。
如果findfirst返回值為0,則循環調用findnext函數,根據返回值,如果為0,結束循環,遍歷結束。否則循環調用findnext即可遍歷,直到返回非0值即可。
當然,這兩個函數需要定義一個結構體來存儲函數返回的數據。結構體如下:
struct
ffblk
{
char
ff_reserved[21];
/*DOS保留字*/
char
ff_attrib;
/*文件屬性*/
int
ff_ftime;
/*文件時間*/
int
ff_fdate;
/*文件日期*/
long
ff_fsize;
/*文件長度*/
char
ff_name[13];
/*文件名*/
}
將結構體中的ff_name[13]顯示出來即可。