① 如何用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語言讀文件換行
代碼呢