2013-05-13 57 views
-2

有格式如下图所示,我需要寻找一个学生的类名的例子中的文本文件:如何分析分隔的文件进行比较

Michael | Straham | Eng101(4.0) | Mth303 
Jacob | Black | SCI 210 (2.3) | Eng101 
Ian | Summers | Mth303(3.30) | Sci 210 

的分隔符号(|)

类名是“ENG101,SCI210,MTH303”。我想搜索该类名称的文本中的每一行,并以某种方式对它们进行索引,以便将它们进行比较。最终结果如下:

ENG101: 
Michael Straham, Jacob Black 

请协助。提前致谢!

+1

请发布您尝试过的内容。现在看起来你只是要求我们为你写整个事情。 – 2013-05-13 19:00:19

+0

您的'结果'与您的数据不符。请修复它,这只会导致混淆。 – 2013-05-13 19:01:06

+0

@Abe没有真正做过什么,我不知道如何解析文本。绝对不是要求全部写出来。我只需要知道如何拉类名,这样我就可以继续工作。 – 2013-05-13 19:04:54

回答

0

我假设你已经在逐行读取输入行。

你可以使用String.Split()完成你想要做的事情(的第一部分)。

例如,下面的代码

String s1 = "Michael | Straham | Eng101(4.0) | Mth303"; 
char[] separators = { '|' }; 
String[] values = s1.Split(separators); 

会给你的4个字符串的阵列( “迈克尔”, “Straham”, “Eng101(4.0)”, “Mth303”)。然后,您可以分析values数组,以查看谁在哪个类中。我可能有大致的代码,看起来像这样(在伪代码中):

foreach (line in input) 
{ 
    String s1 = line; 
    char[] separators = { '|' }; 
    String[] values = s1.Split(separators); 

    String firstName = values[0]; 
    String lastName = values[1]; 

    for (i = 2, i < values.length) 
    { 
     if (values[i] looks like "ENG101") 
     { 
      add firstName lastName to "ENG101" student list 
     } 
     else if (values[i] looks like "MTH303") 
     { 
      .... 
     } 
     .... 
    } 
} 
相关问题