完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
没有直接读取某一行的,但是有读取一行的,所以就可以按照行来读,要读取第n行,必须找到第n-1行 => 则必须找到n-2行 … 必须找到第1行。所以例如读取第10行的字符串,只能一行一行找。
参考下面的代码,按照下面代码的流程一行一行读就行了,一直等读到你需要的行。 #include //读取filename文件(路径)、第 whichLine+1 行文本。 char * ReadSpeacialLine(char *filename, int whichLine) { FILE *fp; int currentLine = 0; //当前读取的行 char strLine[1024]; //每行最大读取的字符数,可根据实际情况扩大 if ((fp = fopen(filename, "r")) == NULL) //判断文件是否存在及可读 { printf("error!"); return NULL; } while (!feof(fp)) // 检测流上的文件结束符,如果文件结束,则返回非0值,否则返回0 { if (currentLine == whichLine) { fgets(strLine, 1024, fp); //读取一行 //printf("%s", strLine); //输出 return strLine; } fgets(strLine, 1024, fp); //读取一行,并定位到下一行 currentLine++; } fclose(fp); //关闭文件 return NULL; } int main() { char txtFile[] = "test.txt"; int i = 11; printf("第%d行n%s", i+1 , ReadSpeacialLine(txtFile, i)); //ReadSpeacialLine返回的字符串里自带换行 getchar(); //防止结束闪退 return 0; } |
|
|
|
|
|
没有指定行的操作,需要自己按换行分割,数出需要的行来。
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
999 浏览 0 评论
2781 浏览 0 评论
图腾柱PFC无法上升至400V,且电感电流为正弦波形,但是幅值极小
9368 浏览 0 评论
飞凌嵌入式ElfBoard-Vim编辑器之静态链接和动态链接
2895 浏览 0 评论
使用 LinkBoy 将程序导出为 C 语言代码并烧录至 Arduino ESP32 开发板
2300 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 21:00 , Processed in 0.741264 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2723