c语言中读文本文档如何让文件指针换到下行首

如题所述

文本文档的换行标识符为'\n', 当读完\n后,指针就移动到了下行的行首。

以此为思路可以得到代码:

int moveToNextLine(FILE *fp)
{
    int c;
    
    if(fp == NULL) return -1;//文件指针非法
    while(1)
    {
        c = fgetc(fp);
        if(c == EOF) return EOF;//到文件尾,不存在下一行
        if(c == '\n') break;//读到需要的换行符。
    }
    
    return 0;
}

在读取中,FILE*指针会自动完成移位,所以不需要显式的返回指针。

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-25
1,使用fgets指针会自动定位到下行的行首
2,用fgetc,循环读一直遇到回车符停止,这时指针也在下行的行首本回答被网友采纳
第2个回答  2012-04-23
不行的··除非原文档在写进去的时候就有\n,那么你读的时候会自己跳到下一行首
第3个回答  2012-04-24
可以试试fgets 函数

c语言中读文本文档如何让文件指针换到下行首
文本文档的换行标识符为'\\n', 当读完\\n后,指针就移动到了下行的行首。以此为思路可以得到代码:int moveToNextLine(FILE *fp){ int c; if(fp == NULL) return -1;\/\/文件指针非法 while(1) { c = fgetc(fp); if(c == EOF) return EOF;\/\/到文件尾,不存在下一行...

c\/c++中txt文件读写换行怎么实现
在C语言中,以fopen打开文件,返回值为文件指针FILE*型。可以以如下方式读写换行:1、 fgetc\/fputc 该组函数功能为读写单个字符,如ch=fgetc(fp); fputc(ch, fp);2 fscanf\/fprintf 格式化输入输出函数。 以%c格式时,可以读写换行。如 fscanf(fp, "%c",&ch);fprintf(fp,"%c",ch);二、C++...

C语言读取文本文档中的信息,读到一半就停了
这个文件每行的最后不是,,而是换行符\\n 把fscanf,最后一个占位符%[^,]改成%[^\\n]就行了。

c语言如何写入文件时换行
输出给文件是 fprintf(FILE *restrict fp, const char * restrict format, ...);其中,fp是文件指针,format是格式字符串,...是需要输出的变量,个数不限。回车是一样的'\\n'。fp通过打开文件得到,这个你都知道了应该,不说了。就是fprintf(fp,"\\n");肯定是你哪里写的不对咯,我这里往文件...

C语言,读取txt文件,每行内容不变,乱序输出每行,思路?
1)申请一个足够大的指向字符的指针数组,并把每一行字符串的首地址保存到这个数组中,假设有N行;2)产生一个[0,N)的随机整数x,输出第x行的字符串。3)将指针数组中第x个元素与第N-1个元素交换位置。4)N=N-1,如果N>0则转2),否则结束。

C语言中如何定位文件txt的光标
1、使用fseek函数即可更改文件指针的位置。函数名: fseek功 能: 重定位流上的文件指针用 法: int fseek(FILE *stream, long offset, int fromwhere);描 述: 函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere为基准,偏移offset个字节的位置。如果执行失败(比如offset超过文件自身...

C语言写好了一个文件保存到了硬盘中,下次打开这个文件时,怎样才能返 ...
如果是这样的话,首先将fp移动到你保存该结构体的地方,然后用read(fp, (char*)&your_struct_obj, sizeof(your_struct));或者类似的函数就可以了。这种利用文件保存结构,再恢复结构的方法对结构体中的指针存在问题,恢复后的指针有可能是野指针,指针是进程空间的绝对地址,可改用相对某个特定变量的...

c语言 读写文件时怎么样一次读取几行,然后再几行几行的往下读取_百度知 ...
;return 0;} 如果不是字符串,而是数据,那么根据文件里数据写法,一行有多少个数,也可以通过循环实现。如果更复杂:每行有数,有字符串,个数不定,同样可以通过循环实现,只是读时 要检查测定是否遇到 '\\n' 了,遇到 '\\n'就是 一行。写文件也是一样,可以循环,行结束就输出一个 '\\n'....

求大神指教一个C语言读取txt文件换行符的问题
你还是先把读纯ascii的文件练熟悉,然后考虑编码方面的问题,甚至可以用二进制方式读

c语言 如何从文件中读取一行,处理过后存到另一个文件,再读下一行,在处...
int main() { FILE *fin,*fout;char str1[81],str2[81]; \/\/假定每行不超过80个字符 char *infile = "in.txt";char *outfile = "out.txt";fin = fopen(infile,"r"); \/\/ 读格式打开,默认为文本类型 fout = fopen(outfile,"w"); \/\/ 写格式打开,默认为文本类型 if((fin == ...

相似回答