c读取文件所有内容|c语言中如何读取文本文件中每一行的数据

c读取文件所有内容|c语言中如何读取文本文件中每一行的数据的第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读取文件所有内容扩展阅读

使用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 );

}

㈡ C语言读取txt文件内容

#include<stdio.h>#include<stdlib.h>intmain(){FILE*file;char*data;intfileSize;//打开文件“D:a.txt”file=fopen("D:\a.txt","r");//获得文件大小fseek(file,0,SEEK_END);fileSize=ftell(file);fseek(file,0,SEEK_SET);//分配内存data=(char*)malloc(fileSize+1);//读取文件fread(data,sizeof(char),fileSize,file);data[fileSize]=0;//输出内容(你想对内容干什么都可以了)printf("%s",data);return0;}

㈢ c语言中读取txt文件内容

如果下面的代码是你的话,链表的长度返回1是正常的,因为你的链表项数据只有一个字符呀!

㈣ C语言用fscanf()函数如何读取文件全部内容

void read_txt(const char* Input, const char* Output){FILE *fin = fopen(Input, "rb");//以二进制读入FILE *fout = fopen(Output, "w");unsigned char ch1,ch2;while(fscanf(fin, "%c%c", &ch1,ch2) != EOF){//直到文件结束 fprintf(fout, "%d%d", ch1,ch2);//以10进制输出}}int main(){ read_txt("D:/IN.txt","D:/OUT.txt");//txt文件目录 return 0;}注:判断文件结束处的语句:fscanf(fin, "%c%c", &ch1,ch2)。其中两个%c之间不能加空格,否则读到的二进制文件会不完整,比源文件少好多个字节

㈤ 如何用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);//关闭文件}

㈥ c语言中如何读取文本文件中每一行的数据

用fstream(文件流),fstream file然后 file.getline(char*,int,char a=‘\n’)第一个是一个存储字符串的指针,第二个是要读内取的最容大长度,第三个是行结束符,默认是回车,函数说明就是当读入的字符超过最大长度int或者遇到行结束符(‘\n’)时就停止,而且这个很好用的(对于读入和写入),你看看文档就会了,哈哈,给分啊。!!~~

㈦ C语言如何读取TXT全部字符

你可以使用输入输出重定向来将TXT文本中的字符内容导入程序中,或者使用标准C库函数:fopen()和fgetc();先使用fopen()函数打开TXT文本文件,然后使用fgetc读取文本文件中的字符。读取全部文本中全部字符可以使用一个while循环加判断是否读取到文件结尾来实现:char ch;while((ch= fgetc(fp)) != EOF)这样当读取到文件结尾时,while循环就会终止。

㈧ 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语言中读取txt文件内容

楼主朋友,你的程序中的问题出在分配空间不足上。比如当你想让a[j]指向某段内存时,用的是 a[j]=(char *)malloc(sizeof(char)); 而到了后面你是要在这段内存中存入一个字符串的,所以就发生了越界。下面是我根据你的代码片段写的一个测试程序,经过修改应该没问题了。#include <stdio.h>#include <stdlib.h>int main (void){ char path[]="12345.txt"; FILE *create; if((create=fopen(path,"r"))!=NULL) { int j; char **a; a=(char **)malloc(100*sizeof(char*)); //此处如果只申请一个char *大小的空间时, //你以后的a[j]往哪里放?此处的100是假设你的文件中有100行信息。如果超过100还得多分配 for (j=0;;j++) { a[j]=(char *)malloc(10000*sizeof(char)); //此处只申请一个字符的空间,后面读取 //长度为10000的字符串就没地方存放了 fgets(a[j],10000,create); printf("%s",a[j]); //测试读取是否成功,将文件中信息显示到屏幕上 if(feof(create)!=0) { for(;j=0;j–) free(a[j]); break; } } free(a); } else printf("Fail to open the file.\n"); fclose(create); printf("\n");}

㈩ C读取文件

下面是一个完整的实例, 楼主参考:#include <stdio.h>#include <stdlib.h>int main(){ char *pchBuf = NULL; int nLen = 0; FILE *pF = fopen(__FILE__, "r"); //打开文件 fseek(pF, 0, SEEK_END); //文件指针移到文件尾 nLen = ftell(pF); //得到当前指针位置, 即是文件的长度 rewind(pF); //文件指针恢复到文件头位置 //动态申请空间, 为保存字符串结尾标志\0, 多申请一个字符的空间 pchBuf = (char*) malloc(sizeof(char)*nLen+1); if(!pchBuf) { perror("内存不够!\n"); exit(0); } //读取文件内容//读取的长度和源文件长度有可能有出入,这里自动调整 nLen nLen = fread(pchBuf, sizeof(char), nLen, pF); pchBuf[nLen] = '\0'; //添加字符串结尾标志 printf("%s\n", pchBuf); //把读取的内容输出到屏幕看看 fclose(pF); //关闭文件 free(pchBuf); //释放空间 return 0;}

未经允许不得转载:山九号 » c读取文件所有内容|c语言中如何读取文本文件中每一行的数据

赞 (0)