1樓:
c語言可以使用fopen()函式讀取txt文字裡。
示例:#include
file *stream, *stream2;
void main( void )
int numclosed;
/* open for read (will fail if file "data" does not exist) */
if( (stream = fopen( "data", "r" )) == null )
printf( "the file 'data' was not opened\n" );
else
printf( "the file 'data' was opened\n" );
/* open for write */
if( (stream2 = fopen( "data2", "w+" )) == null )
printf( "the file 'data2' was not opened\n" );
else
printf( "the file 'data2' was opened\n" );
/* close stream */
if(fclose( stream2 ))
printf( "the file 'data2' was not closed\n" );
/* all other files are closed: */
numclosed = _fcloseall( );
printf( "number of files closed by _fcloseall: %u\n", numclosed );
擴充套件資料
使用fgetc函式
#include
#include
void main( void )
file *stream;
char buffer[81];
int i, ch;
/* open file to read line from: */
if( (stream = fopen( "fgetc.c", "r" )) == null )
exit( 0 );
/* read in first 80 characters and place them in "buffer": */
ch = fgetc( stream );
for( i=0; (i < 80 ) && ( feof( stream ) == 0 ); i++ )
buffer[i] = (char)ch;
ch = fgetc( stream );
/* add null to end string */
buffer[i] = '\0';
printf( "%s\n", buffer );
fclose( stream );
2樓:
在c語言中,檔案操作都是由庫函式來完成的。
要讀取乙個txt檔案,首先要使用檔案開啟函式fopen()。
fopen函式用來開啟乙個檔案,其呼叫的一般形式為: 檔案指標名=fopen(檔名,使用檔案方式) 其中,「檔案指標名」必須是被說明為file 型別的指標變數,「檔名」是被開啟檔案的檔名。 「使用檔案方式」是指檔案的型別和操作要求。
「檔名」是字串常量或字串陣列。
其次,使用檔案讀寫函式讀取檔案。
在c語言中提供了多種檔案讀寫的函式:
·字元讀寫函式 :fgetc和fputc
·字串讀寫函式:fgets和fputs
·資料塊讀寫函式:freed和fwrite·格式化讀寫函式:fscanf和fprinf最後,在檔案讀取結束要使用檔案關閉函式fclose()關閉檔案。
下面以格式化讀寫函式fscanf和fprintf為例,實現對檔案a.txt(各項資訊以空格分割)的讀取,並將它的資訊以新的格式(用製表符分割各項資訊)寫入b.txt,實現對a.
txt的處理。
c語言源程式如下所示:
#include
#include
#include
typedef struct student stu;
int main(int argc, char* argv)//關閉檔案
fclose(r);
fclose(w);
system("pause");
return 0;
}編譯執行後的結果如下:
3樓:沉沉卡
親 你得首先定義乙個檔案file 然後再判斷是否open
4樓:匿名使用者
如果不加路徑,比如乙個main.c檔案的**是這樣的:
if((fp=fopen("源程式.txt","r"))==null)
printf("源程式無法開啟!\n");
如果你是在除錯時候執行的, 那麼"源程式.txt"就是在main.c同乙個資料夾下.如果是直接執行程式,則"源程式.txt"是在main.exe同乙個資料夾下.
注意,如果指定檔案的絕對路徑,比如 d:\源程式.txt ,在**中應該寫成這樣: d:\\源程式.txt
還有疑問請追問..
c語言如何實現對txt檔案的讀取和寫入
5樓:莊生曉夢
#include
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]=;
file *fpread=fopen("data.txt","r");
if(fpread==null)
return 0;
for(int i=0;i<
printf("%d ",a[i]);
getchar();//等待
return 1;
其他運算子:1、逗號運算子
用於把若干表示式組合成乙個表示式(,)。
2、指標運算子
用於取內容(*)和取位址(&)二種運算。
3、求位元組數運算子
用於計算資料型別所佔的位元組數(sizeof)。
4、特殊運算子
有括號(),下標,成員(→,.)等幾種。
6樓:匿名使用者
使用fopen的r方式可以實現讀取,用w+方式可以實現寫入。
1.fopen的函式原型:file * fopen(const char * path,const char * mode);
fopen函式的第乙個引數是檔案路徑,第二個引數是開啟方式,有以下幾種方式:
r 以唯讀方式開啟檔案,該檔案必須存在。
r+ 以可讀寫方式開啟檔案,該檔案必須存在。
rb+ 讀寫開啟乙個二進位制檔案,允許讀資料。
rw+ 讀寫開啟乙個文字檔案,允許讀和寫。
w 開啟只寫檔案,若檔案存在則檔案長度清為0,即該檔案內容會消失。若檔案不存在則建立該檔案。
w+ 開啟可讀寫檔案,若檔案存在則檔案長度清為零,即該檔案內容會消失。若檔案不存在則建立該檔案。
a 以附加的方式開啟只寫檔案。若檔案不存在,則會建立該檔案,如果檔案存在,寫入的資料會被加到檔案尾,即檔案原先的內容會被保留。(eof符保留)
a+ 以附加方式開啟可讀寫的檔案。若檔案不存在,則會建立該檔案,如果檔案存在,寫入的資料會被加到檔案尾後,即檔案原先的內容會被保留。 (原來的eof符不保留)
wb 只寫開啟或新建乙個二進位制檔案;只允許寫資料。
wb+ 讀寫開啟或建立乙個二進位制檔案,允許讀和寫。
wt+ 讀寫開啟或著建立乙個文字檔案;允許讀寫。
at+ 讀寫開啟乙個文字檔案,允許讀或在文字末追加資料。
ab+ 讀寫開啟乙個二進位制檔案,允許讀或在檔案末追加資料。
上述的形態字串都可以再加乙個b字元,如rb、w+b或ab+等組合,加入b 字元用來告訴函式庫開啟的檔案為二進位制檔案,而非純文字檔案。
返回值:檔案順利開啟後,指向該流的檔案指標就會被返回。如果檔案開啟失敗則返回null,並把錯誤**存在errno中。
2.例程:
#include
#define f_path "d:\\myfile\\file.dat"
char c;
int main()
7樓:匿名使用者
寫入檔案:
#include
int main(void)
從檔案讀取:
#include
int main(void)
C語言如何讀取檔案,請問如何用c語言從txt檔案中讀取資料?
乙個檔案流指標對應乙個開啟的檔案,因為你要同時操作兩個檔案,所以要用兩個檔案流指標 就像你要同時操作兩個箱子一樣.這個程式可以這樣理解 有兩個箱子,fp1,fp2 開啟箱子fp1,fp2,一次拿出1024個東西看一下,同時將他放到第二個箱子fp2裡,至到箱子的東西完全拿出來,然後關閉兩個箱子.例子都...
C語言u是以什麼形式輸出,C語言裡面的 ld d U都是什麼意思啊?
元琪睿實鯨 無符號當然就沒法輸出負數了 在二進位制碼中 第一位是符號位 無符號也就沒有符號位 所以32位整數的取值 砍侃看 u是無符號整形,4294967295應該是無符號數的最大值 萍水e相逢 很正常4294967295 0xffffffff u 就是 無符號數 形式 u int unsigned...
C語言中d是什麼意思,C語言裡面的 ld d U都是什麼意思啊?
月兒 c 語言中 是一種表達方式,程式設計,自然也就有輸入輸出,那麼每一座城樓總也會需要進行一個安檢,所以 主要辨別個種資料型別的一種表達方式。方法 步驟 f,f,e,e,g,g 用來輸入實數,可以用小數形式或指數形式輸入。int c 1.2 int c 400 int c 55.434343 c ...