當前位置:首頁 » 編程語言 » c語言操作txt
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言操作txt

發布時間: 2022-11-29 20:32:15

1. c語言如何讀取txt文本裡面的內容

C語言可以使用fopen()函數讀取txt文本里。

示例:

#include <stdio.h>

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 " );

else

printf( "The file 'data' was opened " );

/* Open for write */

if( (stream2 = fopen( "data2", "w+" )) == NULL )

printf( "The file 'data2' was not opened " );

else

printf( "The file 'data2' was opened " );

/* Close stream */

if(fclose( stream2 ))

printf( "The file 'data2' was not closed " );

/* All other files are closed: */

numclosed = _fcloseall( );

printf( "Number of files closed by _fcloseall: %u ", numclosed );

}

(1)c語言操作txt擴展閱讀

使用fgetc函數

#include <stdio.h>

#include <stdlib.h>

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] = '';

printf( "%s ", buffer );

fclose( stream );

}

2. c語言 如何打開一個TXT文件。

C語言,打開文件一個TXT文件,需要使用fopen()函數。
它的函數原型位FILE
*
fopen(const
char
*
path,const
char
*
mode);
如果文件順利打開後,返回指向該流的文件指針就會。如果文件打開失敗則返回NULL,並把錯誤代碼存在errno中。
一般而言,打開文件後會做一些文件讀取或寫入的動作,若打開文件失敗,接下來的讀寫動作也無法順利進行,所以一般在fopen()後作錯誤判斷及處理。
參數path字元串包含欲打開的文件路徑及文件名,參數mode字元串則代表著流形態。
mode有下列幾種形態字元串:
r
以只讀方式打開文件,該文件必須存在。
r+
以可讀寫方式打開文件,該文件必須存在。
rb+
讀寫打開一個二進制文件,允許讀寫數據,文件必須存在。
w
打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。
w+
打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
a
以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。(EOF符保留)
a+
以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。
(原來的EOF符不保留)
wb
只寫打開或新建一個二進制文件;只允許寫數據。
wb+
讀寫打開或建立一個二進制文件,允許讀和寫。
ab+
讀寫打開一個二進制文件,允許讀或在文件末追加數據。
wx
創建文本文件,只允許寫入數據.[C11]
wbx
創建一個二進制文件,只允許寫入數據.[C11]
w+x
創建一個文本文件,允許讀寫.[C11]
wb+x
創建一個二進制文件,允許讀寫.[C11]
w+bx
和"wb+x"相同[C11]
以x結尾的模式為獨占模式,文件已存在或者無法創建(一般是路徑不正確)都會導致fopen失敗.文件以操作系統支持的獨占模式打開
下面讀取TXT文件的行數並把把TXT文件的內容存到數組中。
這里假設每行是一個字元串,每行不超過127個字元(用數組存字元串,最後一位存'\0'),選取fgets進行讀取。
示例代碼如下:
#include
#include
int main(int argc, char* argv) {
FILE* rf = fopen("input.txt","r");
char a[1024][128];
int i=0;
while(fgets(a[i],128,rf))i++;
int n=i;
printf("行數:%d\n",n);
fclose(rf);
i=0;
while(i

3. c語言讀取txt文件內容

用C語言從txt文件中讀取數據,可以使用C標准庫文件自帶的文件介面函數進行操作。
一、打開文件:
FILE *fopen(const char *filename, const char *mode);
因為txt文件為文本文件, 所以打開時選擇的mode應為"r"或者"rt"。
二、讀取文件:
讀取文件應根據文件內容的格式,以及程序要求,選擇讀取文件的函數。可以使用一種,也可以幾種混用。 常用的文件讀取函數如下:
1、fgetc, 從文件中讀取一個位元組並返回。 適用於逐個位元組讀取。
2、 fgets, 從文件中讀取一行。適用於整行讀取。
3、fscanf, 格式化讀取文件, 在已經清楚文件存儲格式下,可以直接用fscanf把文件數據讀取到對應類型的變數中。
4、fread, 整塊讀取文件, 對於txt文件比較少用。
三、關閉文件:
讀取結束後,應調用fclose函數關閉文件。

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

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

5. c語言如何導入txt並修改

C語言裡面操作文件都需要該文件的句柄(文件描述符),所以一般都是先打開需要操作的文件獲取該文件的文件描述符:fd
=
fopen("/home/test.text","rw");//以讀寫的方式打開test.txt,函數返回該文件的文件描述符
下面就可以使用fscanf()函數與fprintf()對文件進行讀寫操作。
1.fscanf()功
能: 從一個流中執行格式化輸入,fscanf遇到空格和換行時結束,注意空格時也結束。這與fgets有區別,fgets遇到空格不結束。
2.fprintf()函數根據指定的format(格式)發送信息(參數)到由stream(流)指定的文件.
fprintf()只能和printf()一樣工作.
fprintf()的返回值是輸出的字元數,發生錯誤時返回一個負值.

6. 用c語言讀取一個txt文件

如果預知前面的是英文後面的是中文,即可分開:

#include<stdio.h>

#define N 100

void main() { FILE *fp; char s[256],y[N][20],h[N][20]; int i,n;

if ( fp=fopen("c:\data\text.txt","r") ) {

n=0;

while ( !feof(fp) ) {

fgets(s,256,fp); sscanf("%s%s",y[n],h[n]); n++; if ( n>=N ) break;

}

fclose(fp);

printf("英文: "); for ( i=0;i<n;i++ ) printf("%s ",y[i]); printf(" ");

printf("中文: "); for ( i=0;i<n;i++ ) printf("%s ",h[i]); printf(" ");

} else printf("無法打開文件讀取。 ");

}

如果中英文順序不一定,且不會有中英文混合單詞:

#include<stdio.h>

#include<string.h>

#define N 100

void main() { FILE *fp; char s[256],y[N][20],h[N][20]; int i,n;

if ( fp=fopen("c:\data\text.txt","r") ) {

n=0;

while ( !feof(fp) ) {

fgets(s,256,fp); sscanf("%s%s",y[n],h[n]);

if ( y[n][0]<0 ) { strcpy(s,y[n]);strcpy(y[n],h[n]);strcpy(h[n],s); } //漢字字元ASCII碼小於0

n++; if ( n>=N ) break;

}

fclose(fp);

printf("英文: "); for ( i=0;i<n;i++ ) printf("%s ",y[i]); printf(" ");

printf("中文: "); for ( i=0;i<n;i++ ) printf("%s ",h[i]); printf(" ");

} else printf("無法打開文件讀取。 ");

}

7. C語言 文件操作,要讀取一個txt文件內容

在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 <stdio.h>
#include <stdlib.h>
#include <assert.h>
typedef struct student{
char name[32];
int no;
char sex[16];
float score;
} stu;

int main(int argc, char* argv[])
{
//打開文件
FILE * r=fopen("A.txt","r");
assert(r!=NULL);
FILE * w=fopen("B.txt","w");
assert(w!=NULL);

//讀寫文件
stu a[128];
int i=0;
while(fscanf(r,"%s%d%s%f",a[i].name,&a[i].no,a[i].sex,&a[i].score)!=EOF)
{
printf("%s\t%d\t%s\t%g\n",a[i].name,a[i].no,a[i].sex,a[i].score);//輸出到顯示器屏幕
fprintf(w,"%s\t%d\t%s\t%g\n",a[i].name,a[i].no,a[i].sex,a[i].score);//輸出到文件B.txt
i++;
}

//關閉文件
fclose(r);
fclose(w);

system("pause");
return 0;
}

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

使用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<stdio.h>
#define F_PATH "d:\\myfile\\file.dat"
char c;
int main(){
FILE*fp=NULL;//需要注意
fp=fopen(F_PATH,"w"); //創建文件
if(NULL==fp) return -1;//要返回錯誤代碼
while(scanf("%c",&c)!=EOF) fprintf(fp,"%c",c); //從控制台中讀入並在文本輸出
fclose(fp);
fp=NULL;//需要指向空,否則會指向原打開文件地址
return 0;
}

9. C語言怎麼打開TXT文件

C語言,打開文件一個TXT文件,需要使用fopen()函數。

它的函數原型位FILE * fopen(const char * path,const char * mode);

如果文件順利打開後,返回指向該流的文件指針就會。如果文件打開失敗則返回NULL,並把錯誤代碼存在errno中。

一般而言,打開文件後會做一些文件讀取或寫入的動作,若打開文件失敗,接下來的讀寫動作也無法順利進行,所以一般在fopen()後作錯誤判斷及處理。

參數path字元串包含欲打開的文件路徑及文件名,參數mode字元串則代表著流形態。

mode有下列幾種形態字元串:

r 以只讀方式打開文件,該文件必須存在。

r+ 以可讀寫方式打開文件,該文件必須存在。

rb+ 讀寫打開一個二進制文件,允許讀寫數據,文件必須存在。

w 打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。

w+ 打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。

a 以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。(EOF符保留)

a+ 以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。 (原來的EOF符不保留)

wb 只寫打開或新建一個二進制文件;只允許寫數據。

wb+ 讀寫打開或建立一個二進制文件,允許讀和寫。

ab+ 讀寫打開一個二進制文件,允許讀或在文件末追加數據。

wx 創建文本文件,只允許寫入數據.[C11]

wbx 創建一個二進制文件,只允許寫入數據.[C11]

w+x 創建一個文本文件,允許讀寫.[C11]

wb+x 創建一個二進制文件,允許讀寫.[C11]

w+bx 和"wb+x"相同[C11]

以x結尾的模式為獨占模式,文件已存在或者無法創建(一般是路徑不正確)都會導致fopen失敗.文件以操作系統支持的獨占模式打開

下面讀取TXT文件的行數並把把TXT文件的內容存到數組中。

這里假設每行是一個字元串,每行不超過127個字元(用數組存字元串,最後一位存''),選取fgets進行讀取。

示例代碼如下:

#include<stdio.h>
#include<stdlib.h>
intmain(intargc,char*argv){
FILE*rf=fopen("input.txt","r");
chara[1024][128];
inti=0;
while(fgets(a[i],128,rf))i++;
intn=i;
printf("行數:%d ",n);
fclose(rf);
i=0;
while(i<n)printf("%s",a[i++]);
system("pause");
return0;
}