① 如何用c语言读取txt文件中的其中一行
#include
"stdio.h"
#include
"string.h"
void
main()
{
int
n;
FILE
*fin;
char
s[25];
fin=fopen("c:\\a.txt","r");
fgets(s,25,fin);/*用fgets读第一行到数组s中*/
n=strlen(s);
fseek(fin,n+1,SEEK_SET);/*将文件指针移到下一行*/
fgets(s,25,fin);/*读取第二行的字符串*/
printf("%s",s);
}
这个是我写的一个,如果你想读到第n行的话,用一个for循环控制使文件指针移到第n行就行了
② C语言中fgets和fgetc的区别
1、fgets和fgetc都是文件函数中的输入函数。其中第fgets是输入一个字符串,而fgetc则是输入一个字符。
2、例如:
#include<string.h>
#include<stdio.h>
intmain(void)
{
FILE*stream;
charstring[100],c;
stream=fopen("fan.txt","r+");/*打开一个文本*/
fgets(string,99,stream);/*读取文本中第一行*/
printf("%s",string);/*在控制台显示该行文字*/
c=fgetc(stream);//读取文本第二行第一个字符
putchar(c);//在控制台显示该字符
fclose(stream);//关闭文件
return0;
}
③ C语言 怎么用fgets()读取一个txt文件中的任意行的信息
首先定义文件指针 fp=fopen("文件名称","r");
然后用fseek()设置文件指针的位置;
最后用fgets()得到行信息;int fseek(FILE *stream, long offset, int fromwhere);函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere为基准,偏移offset(指针偏移量)个字节的位置,函数返回0。如果执行失败(比如offset超过文件自身大小),则不改变stream指向的位置,函数返回一个非0值。
fgets()函数原型
char *fgets(char *buf, int bufsize, FILE *stream);
参数
*buf: 字符型指针,指向用来存储所得数据的地址。
bufsize: 整型数据,指明存储数据的大小。
*stream: 文件结构体指针,将要读取的文件流。
④ 用c语言怎么读取txt文件中的行数
读取文件行数, 可以逐个字符读取文件,到文件尾,统计 的个数
参考代码如下
#include<stdio.h>
intmain()
{
intc;
FILE*fp;
intlines=0;
fp=fopen("in.txt","rb");
if(fp)
{
while((c=fgetc(fp))!=EOF)
if(c==' ')lines++;
printf("%d ",lines);
fclose(fp);
}
return0;
}
也可以通过fgets函数,每次读取一行,到文件尾,然后计算读取的次数
#include<stdio.h>
#include<string.h>
intmain()
{
chars[100];
FILE*fp;
intlines=0;
fp=fopen("in.txt","r");
if(fp)
{
while((fgets(s,100,fp))!=NULL)
if(s[strlen(s)-1]==' ')lines++;
printf("%d ",lines);
fclose(fp);
}
return0;
}
⑤ c语言读文件换行
代码呢