-3

刚收到一个问题,当您从文本文件中读取文本行时,您将如何分隔单词并将它们存储到数组中。

例如,如果我的文本文件中有两行如下所示的文本:

1005; 安迪酷;安迪;安德森;23; 洛杉矶 1006; 约翰库尔;约翰; 安德森;23; 洛杉矶

你将如何根据';'将它们分成 . 然后将它们存储在二维数组中。

抱歉,我还没有开始编码,只是在这里粘贴

干杯...

4

3 回答 3

1

Use the strsep function:

char* token;
char* line;

/* I assume the line as loaded from file  */;

if( line != NULL ) {
  while ((token = strsep(&line, ";")) != NULL)
  {
     /* 
         token points to the current extracted string, 
         use it to fill your array 
      */
  }

}
于 2013-05-04T07:57:07.637 回答
0

First read using fgets, then use strtok to split a string http://www.cplusplus.com/reference/cstring/strtok/

于 2013-05-04T07:53:49.457 回答
0

Look at the manual pages for fopen, fgets, strstr and and strchr and strspn functions ... The strtok and strsep functions also work for most things you will do.

于 2013-05-04T07:54:47.373 回答