gpt4 book ai didi

c - 从 C 中的文件中读取特定行和列

转载 作者:行者123 更新时间:2023-11-30 18:44:37 27 4
gpt4 key购买 nike

我试图弄清楚如何从文件中读取特定行,即我有一个包含 40 行的文件,我只想按行号从文件中打印第 3,4,17,24 行。我所知道的只是如何以 != EOF 的条件逐行打印整个文件。我最后想要得到的是一个可以读取文件的确定行并将其打印出来的程序。非常感谢。

void Analyzer(char* filename, int *rows, int *cols) {
char s[99];
FILE *fin = fopen(filename, "r");
if (fin == NULL)
{
printf("Cannot open file.\n");
return;
}
while (fgets(s, 99, fin) != EOF) {
printf("%s", s);
}
fclose(fin);
}

编辑:下一步是从决定的行中获取特定的列,我所说的 cloumns 是指每行的列之间都有“,”,我的想法是尝试使用 strtok(),但如果你有任何更好的主意我会谢谢你。

最佳答案

记录已读行数。

int linecounter = 0;
while (fgets(s, 99, fin) != NULL) {
switch (++linecounter){
case 3: case 4: case 17: case 24:
printf("%s", s);
}
}

我还修复了你的错误; fgets() 在文件末尾返回 NULL 而不是 EOF

关于c - 从 C 中的文件中读取特定行和列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57513023/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com