您的位置:

c语言中txtreport的简单介绍

本文目录一览:

在c语言中,如何读取一个txt文件中的信息

一般来说在C语言中读取txt文件的信息有两种方法,一种是使用C语言标准文件I/O中的fopen()、fread()等等函数,一种是调用操作系统中的API函数,比如Windows上的ReadFile()、OpenFile()等等,现在操作系统一般都具备内存文件映射功能,对于大的txt文件,一般都使用这种方式操作。下面是一个使用C语言标准文件I/O操作文件的例子。

#includestdio.h

FILE*stream;

void main(void)

{

long l;

float fp;

char s[81];

char c;

 

stream=fopen("fscanf.out","w+");

if(stream==NULL)

printf("Thefilefscanf.outwasnotopened\n");

else

{

fprintf(stream,"%s%ld%f%c","hello world",  

65000,3.14159,'x');

/*Setpointertobeginningoffile:*/

fseek(stream,0L,SEEK_SET);

/*Readdatabackfromfile:*/

fscanf(stream,"%s",s);

fscanf(stream,"%ld",l);

fscanf(stream,"%f",fp);

fscanf(stream,"%c",c);

/*Outputdataread:*/

printf("%s\n",s);

printf("%ld\n",l);

printf("%f\n",fp);

printf("%c\n",c);

fclose(stream);

}

}

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语言从txt中读取数据

你的程序我已经调试过了,主要改动:

if((p=fopen("e:\\stu.txt","r"))==NULL)/*你建的txt文档不是二进制文件,二进制文件要通过程序输入,读出来是乱码的,你能读出来的是ASCII文件*/

fscanf(p,"%s%d",stu[i].name,stu[i].num);/*一般操作文本文档是用fscanf()和fprintf()的*/

printf("%s %d\n",stu[i].name,stu[i].num);/*注意%s和%d之间是有空格的,不然运行出来的结果和原文件是有差别的,细节决定成败,考试经常考的*/

运行结果和你的stu.txt完全相同!希望能够帮到你!

C语言中如何读取txt文件中指定的数据

//其中的in.txt就是你要读取数据的文件,当然把它和程序放在同一目录

-------------------------------------

#include

int

main()

{

int

data;

file

*fp=fopen("in.txt","r");

if(!fp)

{

printf("can't

open

file\n");

return

-1;

}

while(!feof(fp))

{

fscanf(fp,"%d",data);

printf("%4d",data);

}

printf("\n");

fclose(fp);

return

0;

}

C语言如何实现对txt文件的读取和写入

1、使用VS新建空工程,直接点击确定,如下所示。

2、新建c文件,用于C语言编译器,输入main.c文件,如下所示。

3、参考代码:

#include stdio.h

int main()

{

  //下面是写数据,将数字0~9写入到data.txt文件中

  FILE *fpWrite=fopen("data.txt","w");

  if(fpWrite==NULL)

  {

      return 0;

  }

  for(int i=0;i10;i++)

      fprintf(fpWrite,"%d ",i);

  fclose(fpWrite);

  //下面是读数据,将读到的数据存到数组a[10]中,并且打印到控制台上

  int a[10]={0};

  FILE *fpRead=fopen("data.txt","r");

  if(fpRead==NULL)

  {

      return 0;

  }

  for(int i=0;i10;i++)

  {

      fscanf(fpRead,"%d ",a[i]);

      printf("%d ",a[i]);

  }

  getchar();//等待

  return 1;

}

4、编译完成后,运行exe程序,执行后显示console程序。