[英]How do I make a program in C that will read ad print specific lines from a file?
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE * ofile;
char fname[100], c;
printf("Please enter a file name: \n");
scanf("%s", fname);
ofile = fopen(fname, "r+");
if (ofile == NULL)
{
printf("This file cannot be opened!\n");
exit(0);
}
c = fgetc(ofile);
while (c != EOF)
{
printf("%c", c);
c = fgetc(ofile);
}
fclose(ofile);
return 0;
}
这就是我所拥有的,它只是打印所有内容。 我找不到任何资源告诉我如何让它只打印前三行或最后三行,或者如何指定行。 我不需要指定行包含的内容,只需指定它们的位置。
您可以手动跟踪您所在的线路并进行比较。
int line = 0;
while (c != EOF)
{
if (c == '\n')
{
line++;
}
if (line != 0)
{
printf("%c", c);
}
c = fgetc(ofile);
}
此添加将跳过第一行,但打印其余部分。 可以随意修改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.