c 读取txt文件

char *fgets(char *buf, int bufsize, FILE *stream);

成功,则返回第一个buf;否则返回NULL

例子:

#include<stdio.h>

#include<stdlib.h>

#include<unistd.h>

#include<malloc.h>

#define FILE_PATH "/home/tmp/test/test.txt"

#define BUFF_LEN 256

int main()

{

FILE *fp = NULL;

char *file = FILE_PATH;

char *line = (char *)malloc(BUFF_LEN * sizeof(char));//和C++不同的是,事先要申请空间,否则报段错误

if( (0 != access(file,R_OK|F_OK)) || (NULL==(fp=fopen(file,"r"))) )

{

printf("open %s failed\n",file);

return -1;

}

while( fgets(line, BUFF_LEN, fp) != NULL )//逐行读取数据

{

printf("the content of each line is:\n%s",line);

}

if(fp!=NULL)

{

fclose(fp);

}

return 0;

}

扩展资料

C++逐行读取txt文件中的字符串

#include<stdio.h>

#include<string.h>

intmain()

{

charszTest[1000]={0};

intlen=0;

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

if(NULL==fp)

{

printf("failedtoopendos.txt\n");

return1;

}

while(!feof(fp))

{

memset(szTest,0,sizeof(szTest));

fgets(szTest,sizeof(szTest)-1,fp);//包含了换行符

printf("%s",szTest);

}

fclose(fp);

printf("\n");

return0;

}

若不存在,则会建立该文件,如果文件存在,写入的数据加到文件尾,即文件原先的内容会被保留。

以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。

C语言中文本文件的逐行读取的实现的代码如下:

#include<stdio.h>

main()

{

FILE * fp;

fp=fopen(“noexist”,”a+”);

if(fp= =NULL) return;

fclose(fp);

}

扩展资料

1、如果输入文本每行中没有空格,则line在输入文本中按换行符分隔符循环取值。

2、如果输入文本中包括空格或制表符,则不是换行读取,line在输入文本中按空格分隔符或制表符或换行符特环取值。

3、可以通过把IFS设置为换行符来达到逐行读取的。

  #include <stdio.h>
  #include <stdlib.h>
  #define LINE 1024
  char *ReadData(FILE *fp, char *buf)
  {
  return fgets(buf, LINE, fp);//读取一行到buf
  }
  void someprocess(char *buf)
  {
  printf("%s", buf);//这里的操作你自己定义
  }
  int main()
  {
  FILE *fp;
  char *buf, filename[20], *p;
  printf("input file name:");
  gets(filename);
  if ((fp=fopen(filename, "r"))==NULL) {
  printf("open file error!!\n");
  return;
  }
  buf=(char*)malloc(LINE*sizeof(char));
  while(1) {
  p=ReadData(fp, buf);//每次调用文件指针fp动后移一行
  if(!p)//文件读取结束则跳出循环
  break;
  someprocess(buf);
  }
  return 0;
  }

程序执行效果与1.txt的内容显示完全一致。

#include <stdio.h>
#include <stdlib.h>

#define LINE 1024

char *ReadData(FILE *fp, char *buf)
{
return fgets(buf, LINE, fp);//读取一到buf
}

void someprocess(char *buf)
{
printf("%s", buf);//的操作你自己定义
}

void main()
{
FILE *fp;
char *buf, filename[20], *p;

printf("input file name:");
gets(filename);

if ((fp=fopen(filename, "r"))==NULL) {
printf("open file error!!\n");
return;
}

buf=(char*)malloc(LINE*sizeof(char));

while(1) {
p=ReadData(fp, buf);//每次文件指针fp会自动后移一行
if(!p)//文件读取结束则跳出循
break;
someprocess(buf);
}
}#include <stdio.h>

int ReadData(void)
{
unsigned int rc, i, get; /*get为读取一个字节*/
FILE *fp;
fp = fopen("helloworld.txt", "r+");
if (fp == NULL)
{
return -1; /*打开失败返回-1*/
}
rc=0;
i=0;
while ((get = fgetc(fp)) != EOF)
{
if((char)get == \n) /*记录换行符*/
{
rc = ftell(fp);
i++;
}
rc++;
}
return i;
}
int main()
{
int row;
row = ReadData();
printf("Row = %d\n", row); /*打印文件行数*/
return 0;
}
喜欢阅读
  • 邪魅太子无颜妃

    邪魅太子无颜妃

    她出生时华光乍现,百鸟呈祥,国师预言国母命格,却因为脸上丑陋的胎记备受欺凌,被人活活打死在泥地!那双眼睛再次睁开的时候,她不再是她。他是帝京身份最尊贵的少年,却深陷诡谲阴谋,步步为营。“你可愿与我执手,一起站在这江山图上?”“好。”21世纪久经沙场的狠厉女军医,深藏不露的邪魅太子,二人联手,云国风云四起,你助我得这天下,我与你共看这如画江山。

  • 灵事秘探

    灵事秘探

    高中的时候,因为打架,被老师体罚跟老师闹了矛盾,结果那老师硬是逼我给他下跪,之后没过一星期他就死了……

  • 往昔旧梦如烟

    往昔旧梦如烟

    新婚夜晚,丈夫羞辱她:你永远取代不了那个女人!家人辱骂她:你永远取代不了你妹妹!她辛辛苦苦谋划几年,有朝一日,终于将离婚合同甩在了某男面前:离婚吧!某男:不离。阮宁渊气急败坏:某小三怀了你的孩子!某男:打掉。阮宁渊继续威胁:你家里逼我离开你!某男:不管。当初恋情人归来,婚姻破碎,她不再留念,甩袖走人,却被他拦下:阮宁渊,你是我的毒。阮宁渊冷笑:左靳南,情至深处,便成了毒,可我早已失去了爱你的能力。

  • 你的爱侵略如火

    你的爱侵略如火

    陆铖是卫小晗的梦中情人,继妹的迫害让他们走在了一起,本以为终于获得的幸福,却在被陆铖亲手把她送给他身边人沉江后而心碎...

  • 纨绔狂少

    纨绔狂少

    千亿富翁的绝色美女,后续成名的国际巨星,世界绝艳女杀手,温柔的未婚妻,各色各样的美女齐聚叶怀阳的身边,人家说多女是福,当你拥有多女却又无法同时驾驭那便是祸了…

  • 予你缠情尽悲欢

    予你缠情尽悲欢

    林迦爱上江淮亦的时候,他还只是个一无所有的混混。市井地痞和千金小姐的爱情自然被无数人津津乐道。但是她却义无反顾,她只要看着江淮亦的眼神,就觉得仿佛拥有了全世界。然而所有故事到最后都会有个可是。

  • 总裁爹地溺宠妻

    总裁爹地溺宠妻

    被癌症被出轨,伤心买醉下的古思玥稀里糊涂睡了个男人。谁知,最后命保住了,肚子里却揣上了个娃。四年后,应母亲召唤,她携萌宝归来。相亲一个又一个,萌宝看不过去,设计钓出个与他一般模样的男人,“妈咪,这是我给你找的男人!全球百强企业总裁,会暖床会煲汤,还会撒娇!”什么?总裁?古思玥一脸懵然。海瀚集团总裁办公室,司宸铭甩出户口本和亲子鉴定,“女人,给你两个选择:一,结婚,我和童童都归你;二,不结婚,童童归我,我归你。”

  • 婚劫难逃:总裁爱坑妻

    婚劫难逃:总裁爱坑妻

    爸爸车祸肇事者跑路,小妈卷着卖房款离开。刚结婚一个月的她又看到了老公和前女友,难不成他这是想……

  • 猜你喜欢
  • c语言怎么读取txt并显示出来
  • c++文件的读取和写入
  • python读取txt文件为列表
  • c语言如何读取txt文件并输出
  • c++读取txt文件
  • 按行读取txt文件
  • mfc逐行读取txt文件
  • c语言输入txt里的数据
  • c语言读取txt文件内容并输出
  • 热门推荐
  • jalan,net
  • potty girl百科
  • pkf 官网 时间禁止
  • 多肉植物容易腐烂
  • 阿片类药物
  • jijidown
  • www34449 con
  • 如何招聘校园大使
  • 类似thumbzilla的网站
  • 15年本田f5图片
  • 大盛石墨 上市
  • adv7441abstz 170
  • be dead against
  • hpv vaccine hawaii
  • 雪纺 透
  • 2018款奔驰glc300图片
  • saijou sara
  • 味わう的否定
  • 夺宝传世挂机
  • 汉王考勤机336
  • All Right Reserved 飞奔空间