无Excel运行库的情况下,如何将数据写入Excel文件? 所有的业务软件几乎都有将数据导入Excel的功能,这样的功能对于用户来说也是很重要的功能,而现在大多数导入到Excel文件的代码都需要调用到Excel的运行库,如何才能在无运行库(即目标机器没有安装Excel或Office的情况下)将数据导入到Excel文件呢?请知道的大侠与各位讨论一下。如FlexCell组件就实现这样的功能,该组件是也是基于.NET开发的。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://topic.csdn.net/u/20090819/11/dfe79a7f-bce9-4d22-bb6f-0db1f4931d80.html 其实运行库就是提供了基本的API支持。你说的那些第三方控件,只不过是自己实现了这些支持而已。肯定离不了这个的。 大家可以试试这样,但具体我就不知道了。应该来说就是知道其格式的生成方式。string filePath = @"D:\Excel\123.xls"; int FileIndex = Microsoft.VisualBasic.FileSystem.FreeFile(); if (System.IO.File.Exists(filePath) == true) { Microsoft.VisualBasic.FileSystem.Kill(filePath); } Microsoft.VisualBasic.FileSystem.FileOpen(FileIndex, filePath, OpenMode.Binary, OpenAccess.ReadWrite, OpenShare.Default, -1); Microsoft.VisualBasic.FileSystem.FilePut(FileIndex, (byte)64, -1L); Microsoft.VisualBasic.FileSystem.FilePut(FileIndex, (byte)64, -1L);以上的代码就会在表格的第一行第一列生成"@@" Microsoft.VisualBasic.FileSystem.FilePut(FileIndex, (byte)255, -1L); 就会有一个空格 没有办法,虽然你 可以通过jet.odbc写入创建一个XLS文件,但对现有的EXCEL无法进行更新,必须安装EXCEL库。或者你能深入了解XLS文件的文件结构。 用第三方library好些,不需要Excel automation,换句话说就是不需要客户的机子上安装有Office。目前我所知道的第三方Excel控件里面,应该属Gembox Spredsheet功能最强了。支持03和07格式,可以设定单元格字体,格式,颜色甚至是公式及图表。http://www.gemboxsoftware.com/GBSpreadsheet.htm 没有安装office,使用XML文件http://topic.csdn.net/u/20100706/23/b09b78e4-0eba-4aa8-8091-64a913d72965.html 当然可以啦。你模拟Flex,把数据写成 Excel要求的格式就行啦不一定非要安装 Excel组件。但是这样做,你要非常清楚Excel文件的组织形式啊。 找到写入的方法:http://blog.csdn.net/hxwangcong/archive/2008/10/03/3013442.aspx再找找格式设置方法! 如果不带格式的话, 试一下这个类, 很简捷 .速度也不错http://www.oschina.net/p/excellibrary 如果不需要插入图片的话可以把将文件流写成XML格式,然后文件Saveas为一个xls即可具体写成什么样的XML,可以新建一个xls文件,然后另存为xml表格格式,再用记事本打开来查看网上搜一个近身剪的博客应该有这个 Chart图表如何转换成二进制流,急!!! networkstream发邮件发不出去 asp.net如何启动服务上的应用程序 发送电子邮件 程序窗口无响应了 如何解决呢? 再开一贴问,怎么将部分SQL语句传入存储过程并执行,急 我的一个产品显示网站,进入首页时,速度很慢,不知道是什么原因?请进看我的详细描述!谢谢 c#如何操作NTFS权限? 开发ABBYY FineReader问题 wince6.0扫描枪 找到焦点所在的textbox 建立何种程序的问题 求winform上传功能如何实现? 为什么不对呢?
int FileIndex = Microsoft.VisualBasic.FileSystem.FreeFile();
if (System.IO.File.Exists(filePath) == true)
{
Microsoft.VisualBasic.FileSystem.Kill(filePath);
}
Microsoft.VisualBasic.FileSystem.FileOpen(FileIndex, filePath, OpenMode.Binary, OpenAccess.ReadWrite, OpenShare.Default, -1); Microsoft.VisualBasic.FileSystem.FilePut(FileIndex, (byte)64, -1L);
Microsoft.VisualBasic.FileSystem.FilePut(FileIndex, (byte)64, -1L);
以上的代码就会在表格的第一行第一列生成"@@"
http://topic.csdn.net/u/20100706/23/b09b78e4-0eba-4aa8-8091-64a913d72965.html
你模拟Flex,
把数据写成 Excel要求的格式就行啦
不一定非要安装 Excel组件。但是这样做,你要非常清楚Excel文件的组织形式啊。
http://blog.csdn.net/hxwangcong/archive/2008/10/03/3013442.aspx再找找格式设置方法!
http://www.oschina.net/p/excellibrary
具体写成什么样的XML,可以新建一个xls文件,然后另存为xml表格格式,再用记事本打开来查看
网上搜一个近身剪的博客应该有这个