2013-04-05 162 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

相关问题