2013-04-16 68 views
0

我正在寫一個小型應用程序,它將通過FTP下載.csv文件,並以特定格式將其讀入Excel。閱讀LINQ結果

我在這個網站上找到了下面的LINQ代碼片段,它將把.csv文件讀入var'csv'。問題是,我似乎無法弄清楚如何枚舉var'csv'到字符串數組中(然後我將使用它填充相關的Excel單元格)。

任何人都可以幫忙嗎?謝謝,加文

var lines = File.ReadAllLines(lblShowFileName.Text).Select(a => a.Split(',')); 
var csv = from line in lines select (from piece in line select piece); 
+0

爲什麼不直接使用COM Interop對象在Excel中打開CSV文件,然後將文件另存爲XLS或XLS X?我不相信你需要通過任何收集來枚舉來做到這一點,Excel會照顧到這一點。 –

+0

你在尋找一個2維數組嗎? – code4life

回答

1

使用ToArray()擴展方法來產生string[]代替IEnumerable<string>

var csv = (from line in lines 
      select (from piece in line 
        select piece).ToArray()).ToArray(); 

因爲你打電話ToArray()兩次 - 內部和外部的查詢中,您csv變量將是一個字符串jagged arraystring[][]

+0

完美,謝謝。 –