将string数组和浮点数组从C#保存到Excel文件

我试图将我的计算结果保存到excel文件的文本文件分析中。 对于每个parsing的文件,我想创build一个excel文件,每个单元格的第一行文本(我已经有这个数据)和行下面的我的程序计算的值。

我通过各种方法阅读以前的post,从C#与Excel交互,但我不明白每个的特点。

感谢致敬

亚历山德罗

有很多方法可以在C#中使用Excel文件。

  • OleDb – API,用于以统一(SQL)方式访问各种数据源的数据
  • COM – 使用Excel对象模型,COM接口到Excel应用程序。 MS Excel必须安装在目标机器上
  • 将数据写入一些文件格式,Excel可以读取

前两个选项在csharp.net-informations.com网站上有很好的描述

如果您不需要从您的代码中执行任何奇妙的Excel操作,我会build议使用第三种方法 – 将数据写入CSV文件。 它可以在Excel中打开,并且很容易创buildCSV文件。

你可以使用像这样的东西:

using(TextWriter tw = new StreamWriter("sample.csv") { // Header tw.WriteLine("X,Y"); foreach(var item in Data) { tw.WriteLine(item.X.ToString(InvariantCulture) + "," + item.Y.ToString(InvariantCulture)); } } 

除了使用通用的第三方库之外,创buildexcel文件的最快最容易的方法就是把它们输出为html表格。 Excel是能够导入这样的。

 <table> <tr><td>my col1</td><td>my col 2</td></tr> <tr><td>data1</td><td>data2</td></tr> ... </table> 

存储文件的扩展名为“xls”。 这个计划当然是不安全的。 更复杂的场景会更好地利用某种“types安全”库。 但对于大多数“我们只需要将其导出为ex​​cel文件”的情况下,这就足够了。 甚至可以通过CSS命令格式化表格,并处理不同的编码。