怎么用文件流或者内存流一行一行的js随机读取文本一行文件

C#读取TXT文件流_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
C#读取TXT文件流
上传于||文档简介
&&C​#​读​取​T​X​T​文​件​流​的​一​般​写​法​和​实​例
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢&&/&&&&/&&&&/&&
头文件:include&stdio.h&
fgets()函数用于从文件流中读取一行或指定个数的字符,其原型为:
& & char * fgets(char * string, int size, FILE * stream);
参数说明:
string为一个字符数组,用来保存读取到的字符。
size为要读取的字符的个数。如果该行字符数大于size-1,则读到 size-1 个字符时结束,并在最后补充' \0';如果该行字符数小于等于 size-1,则读取所有字符,并在最后补充 '\0'。即,每次最多读取 size-1 个字符。
stream为文件流指针。
【返回值】读取成功,返回读取到的字符串,即string;失败或读到文件结尾返回NULL。因此我们不能直接通过fgets()的返回值来判断函数是否是出错而终止的,应该借助feof()函数或者函数来判断。
注意:fgets()与不一样,不仅仅是因为gets()函数只有一个参数 FILE *stream,更重要的是,fgets()可以指定最大读取的字符串的个数,杜绝了gets()使用不当造成缓存溢出的问题。
【实例】从myfile.txt文件中读取最多99个字符。
#include &stdio.h&
int main()
char mystring [100];
pFile = fopen (&myfile.txt& , &r&);
if (pFile == NULL)
perror (&Error opening file&);
if ( fgets (mystring , 100 , pFile) != NULL )
puts (mystring);
fclose (pFile);
又如,使用fputs()写一个文件,然后fgets()读取文件内容并显示。
#include &stdio.h&
#include&stdlib.h&
#include&io.h&
#include&conio.h&
int main(void)
char msg[] = &This is a test!\n secend line\n&;
char msgget[100];
int i = 0;
fstream = fopen(&test.txt&,&w+&);
/*打开文件*/
if(fstream==NULL)
printf(&Open file failed!\n&);
fputs(msg, fstream);
/*写入文件*/
fflush(fstream);
close(fileno(fstream));
fstream=fopen(&test.txt&,&r&);
fgets(msgget,3,fstream) ;
fputs(msgget, stdout);
printf(&\n&);
fgets(msgget,100,fstream) ;/*从流中读取一行或者指定个数字符*/
fputs(msgget, stdout); /*送一个字符串到流中*/
运行结果:
is is a test!
程序首先创建一个空文件,并利用fputs()函数写 入两行字符串,刷新关闭。然后重新以只读的方式打开该文件, 使用fgets()函数连续两次读取该文件,第一次读取3-1个字符,第 二次读取一行。最终结果都显示出来。}

我要回帖

更多关于 matlab 读取文本一行 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信