如何在C中的文本文件中创建单独的实体?

时间:2012-12-14 15:38:59

标签: c arrays string

我正在寻找一个相当简单的问题的解决方案:

  1. 有一个文字文件,其中的单词\字符串用'\ n'分隔。每个新字符串都在'\ n'后面开始
  2. 需要从文件中获取每个字符串并从中创建单独的实体。

2 个答案:

答案 0 :(得分:2)

是的,这个任务听起来很简单,只是模糊的想法是“从字符串中创建一个单独的实体”(???)。

如果我要实现这样的程序,这是我将使用的通用算法:

#include <stdio.h>
#define LEN 0xFF
int main(int argc, char ** argv) {
  char line[LEN];
  FILE * input_file = NULL;
  if ((input_file=fopen("myinputfile.txt","r")) == NULL) {
    // Handle error when opening the file...
  }
  while (fgets(line, LEN, input_file) != NULL) {
    // Process each line of input...
  }
  fclose(input_file);
  return 0;
}

答案 1 :(得分:0)

根据您给出的模糊描述,您可以做的是使用数组(缓冲区),并结合fopen,循环和sscanf,您可以匹配文件的结果并将它们放入数组中的单独元素。然后,您可以访问结果。您可能需要跟踪一些指数。

还有很多其他方法可以做到这一点,但肯定需要更多信息。