根据我目前的了解,基本上有两种方法:
1) 自己按照excel文件的格式写文件。这种方法需要知道excel文件的存储格式,比较麻烦。但是其中最简单的是csv文件,也就是逗号分隔的文件,缺点是只能是纯文本文件。
2) 第二种方法是使用互操作类,Microsoft.Office.Interop.Excel,这个不是。net自带的,需要安装vsto,也就是vistual studio tools for office。 这个很好用,操作很简单,是非常high level 的接口。缺点是 程序发布的时候需要Microsoft.Office.Interop.Excel.dll。
不过也有把。net的dll和exe打包在一起的方法,参见http://social.msdn.microsoft.com/Forums/zh-CN/visualcshartzhchs/thread/6fb228b0-d9ed-413b-9adb-84568af7f483
以下引用:
建议1:之前提到的,用ILMerge将所有引用的DLL和exe文件打成一个exe文件。具体做法参考:http://www.cnblogs.com/kevin-wang/archive/2010/03/28/1699162.html
建议2:建一个项目,引用dll文件,在项目里添加源文件,就是之前引用的dll文件。编译项目,生成exe文件,然后删除引用的dll文件(注意是先编译,再删除)运行EXE会自动生成DLL文件。具体内容参考:http://www.bysjlwdx.com/htm/27/397.htm
建议3:把dll打包成resource的形式,然后放到exe中,运行程序时,先释放资源。可以参考一下这个链接:http://blog.csdn.net/xochenlin/archive/2008/11/06/3240939.aspx