2013-05-13 55 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") 
     { 
      .... 
     } 
     .... 
    } 
} 
相關問題