2017-02-27 74 views
0

爲了好玩,我正在幫助我的學校創建一個應用程序,讓所有課程取消供學生使用。從我的IT技術人員我得到了包含類名,教師和其他信息相當複雜的結構看起來像這樣:將文本轉換爲數組 - Swift

3818,"20170217",5,752,64,"Rh",,"fr_2",,,,"iV5",,,"IS10a~IS10b~IS10c~IS10d","Z",,1,"IS10a~IS10b~IS10c~IS10d",C,201702161517,"-" 

3819,"20170217",6,752,102,"Rh",,"fr",,,,"iB3","iB3",,"IT10a","Z",,0,"IT10a",,201702161517,"-" 

3820,"20170217",8,752,119,"Rh",,"fr",,,,"iC1.2","iC1.2",,"IS6a","Z",,0,"IS6a",,201702161517,"-" 

3821,"20170227",2,753,207,"Dd","Kru","sc",,,,"iB8","iB8",,"IS9b","Z",,2097152,"IS9b",,201702270804,"+~-" 

3822,"20170227",3,753,8,"Dd",,"phH_1",,,,"iB8",,,"IS12~IT12","Z",,2097153,"IS12~IT12",C,201702270804,"-" 

3823,"20170227",4,753,29,"Dd",,"phH_1",,,,"iB8",,,"IS11~IT11","Z",,2097153,"IS11~IT11",C,201702270804,"-" 

3824,"20170227",5,753,30,"Dd",,"phH_1",,,,"iB8",,,"IS11~IT11","Z",,2097153,"IS11~IT11",C,201702270804,"-" 

3825,"20170227",6,753,7,"Dd",,"phH_1",,,,"iB8",,,"IS12~IT12","Z",,2097153,"IS12~IT12",C,201702270804,"-" 

3826,"20170227",7,753,327,"Dd",,"COV",,,,"AC1",,,,"Z",,2097153,,,201702270803, 

3827,"20170227",8,753,46,"Dd",,"ph_1",,,,"iB8",,,"IS10a~IS10b~IS10c~IS10d~IT10a~IT10b","Z",,2097153,"IS10a~IS10b~IS10c~IS10d~IT10a~IT10b",C,201702270804,"-" 

從這個數據,我需要得到各個部分,如「20170217」,並把它們變成一個數組供以後使用。我最好怎麼做?對於任何關心的人,我在下面添加了完整的代碼片段!

https://jsfiddle.net/pztwfsq1/

+1

斯文嗨,#2是一個偉大的地方去,當你第一次嘗試了一些東西。如果您嘗試過但仍然失敗,請記錄您嘗試過的內容。 SO社區可能不會回答這個問題。 – ajmccall

+0

感謝大家的建議,我在這裏是一個新的。然後,我要檢查CSV。很有幫助! –

回答

3

由於是每行一個數據集,你可以通過所有行迭代。將每行分割爲,,您將獲得一組信息。

此類似(給你的想法):

let row = "1,Peter,5,92,,Brooklyn" 
let data = row.components(separatedBy: ",") 

let name = data[1] // Peter 
let location = data[5] // Brooklyn