怎么用fgets()一行一行读取文件
我想用fgets()读取文件内容,从第一行读,读完又开始读第二行,一直读到最后一行,,请问怎么做才可以...
我想用fgets()读取文件内容,从第一行读,读完又开始读第二行,一直读到最后一行,,请问怎么做才可以
展开
2个回答
展开全部
缓冲区数组要足够大,装得下一行的内容.示例如下:
#include <stdio.h>
int main( void )
{
FILE *stream;
char line[100];
if( fopen_s( &stream, "crt_fgets.txt", "r" ) == 0 )
{
if( fgets( line, 100, stream ) == NULL)
printf( "fgets error\n" );
else
printf( "%s", line);
fclose( stream );
}
}
追问
你这样是不是把txt文件中读取第一行,到line数组中,可是fgets会读取第二行到文件中吗
追答
加个循环即可.
#include <stdio.h>
int main( void )
{
FILE *stream;
char line[100];
if( fopen_s( &stream, "crt_fgets.txt", "r" ) == 0 )
{
while( fgets( line, 100, stream ) )
printf( "%s", line);
fclose( stream );
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询