c語言從文件讀取一行
⑴ c語言如何讀取文本文件中的一行數據啊
用fstream(文件流),fstream
file
然後
file.getline(char*,int,char
a=『\n』)第一個是一個存儲字元串的指針,第二個是要讀取的最大長度,第三個是行結束符,默認是回車,函數說明就是當讀入的字元超過最大長度int或者遇到行結束符(『\n』)時就停止,而且這個很好用的(對於讀入和寫入),你看看文檔就會了,哈哈,給分啊。!!~~
⑵ C語言怎樣讀取文本的每一行
可以使用fgets函數來實現。
1 函數名:
fgets
2 聲明形式:
char *fgets(char *buf, int bufsize, FILE *stream);
3 頭文件:
stdio.h
4 功能及參數說明:
從stream中讀取一行數據存到buf中。如果數據長度小於bufsize,那麼讀入整行數據,並將換行符轉換為字元串結束符\0。 如果數據長度超過bufsize,那麼只讀入bufsize大小的數據,並在結尾添加\0。
5 返回值:
成功,則返回第一個參數buf;
在讀字元時遇到end-of-file,則eof指示器被設置,如果還沒讀入任何字元就遇到這種情況,則buf保持原來的內容,返回NULL;
如果發生讀入錯誤,error指示器被設置,返回NULL,buf的值可能被改變。
⑶ 如何用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語言如何從文件中讀入一行數據
關鍵技巧:
每行數據個數隨機,可用
c
=
fgetc(fin);
ungetc(c,fin);
檢查是否讀到
換行符或文件結束符。
例如:
a.txt
1
2
3
45
56
6
7
8
9
10
至於記錄每行數據個數,存放到數組,等等,可以自己補充完善。
程序:
#include
<stdio.h>
int
main(
)
{
file
*fin;
int
a,c;
fin=fopen("a.txt","rw");
while(1){
c
=
fgetc(fin);
if
(c==eof)
break;
if
(c=='\n')
{printf("\n==========\n");
continue;};
ungetc(c,fin);
fscanf(fin,"%d",&a);
printf("%d
",a);
}
fclose(fin);
return
0;
}
⑸ C語言有沒有從文件中讀取一行字元串的方法
從文件中查找數據並輸出,按以下步驟操作:1.打開文件,如果文件未找到,報錯,結束 fopen2.輸入待查的字元串,存到變數中gets3.逐行循環讀取文件,直到文件結束fgets4.檢查字元串是否在該行中,如果在,則輸出該行,關閉文件,結束。否則繼續查找strstr5.循環結束,輸出未找到該字元串。6.關閉文件。fclose相關代碼和運行效果如下圖:⑹ C語言讀取文件內容,按行讀
C語言逐行讀取文件內容 ,參考代碼如下:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#defineMAX_LINE1024
intmain()
{
charbuf[MAX_LINE];/*緩沖區*/
FILE*fp;/*文件指針*/
intlen;/*行字元個數*/
if((fp=fopen("test.txt","r"))==NULL)
{
perror("failtoread");
exit(1);
}
while(fgets(buf,MAX_LINE,fp)!=NULL)
{
len=strlen(buf);
buf[len-1]='
