2013-04-05 160 views
0
var arrResults = Array1.Join(Array2, x => x.ID, x => x.ID, (first, second) => new 
      { 
       IDRecord = first.ID, 
       Count1 = first.Count, 
       Count2 = second.Count, 
      }) 
      .OrderBy(item => item.IDRecord).ToArray(); 

      // bind & display results in datagrid 
      dataGridView1.DataSource = arrResults; 

我上面的代碼不正是我想要的,並顯示在DataGrid控件的結果。現在,我想將結果導出到一個文本文件C:\ output.txt中,而不是。我該怎麼做呢?如何將LINQ命令的結果輸出到文本文件?

我以前的嘗試通常涉及獲取的錯誤,說「無法從‘串’到System.Collections.Generic.IEnumerable轉換」。

回答

2

首先結果轉換爲字符串:

var lines = arrResults.Select(record => 
    record.ID + " " + record.Count1 + " " + record.Count2);//todo fix formatting 

然後將它們全部寫入文件。

File.WriteAllLines("file.txt", lines); 
0

使用System.IO.Streamwriter寫入文件

using(StreamWriter sw = new StreamWriter(@"C:\output.txt")){ 
    foreach(var s in arrResults) 
     sw.WriteLine(s); 

} 

參考見here

+0

那麼,仍然有可能! – 2013-04-05 20:42:31

相關問題