找回密码
 立即注册

QQ登录

只需一步,快速开始

cpa95599
中级会员   /  发表于:2013-10-24 22:30  /   查看:5082  /  回复:4
开发桌面应用软件,单机版,不需要用到大型数据库,请问spread 可不可以 读取excel
   运算以后存放到sqlite数据库,用的时候 导出呢

4 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2013-10-25 13:07:00
沙发
回复 1楼cpa95599的帖子

sqlite 我不太了解。
在和 SQL 或 Access 数据库交互过程中。
Spread 支持把文件保存为 Stream,进而可以转换成 二进制 数据,存储到数据库。
回复 使用道具 举报
cpa95599
中级会员   /  发表于:2013-10-25 13:24:00
板凳
回复 2楼iceman的帖子

关键是代码怎么写
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-10-25 15:53:00
地板
回复 3楼cpa95599的帖子

保存为 byte[] 的代码如下:

  1. byte[] spreadbytes;
  2.         MemoryStream ms;
  3.         private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)
  4.         {
  5.             ms = new MemoryStream();
  6.             this.fpSpread1.Save(ms, false);
  7.             spreadbytes = new byte[ms.Length];
  8.             int byteLength = Convert.ToInt32(ms.Length);
  9.             ms.Read(spreadbytes, 0, byteLength);

  10.             //写入数据库

  11.         }
复制代码
回复 使用道具 举报
Ally
葡萄城公司职员   /  发表于:2013-10-25 15:54:00
5#
1.请问spread 可不可以 读取excel
Spread 支持 excel 的导入导出,可以使用以下代码:
fpSpread1.ActiveSheet.OpenExcel("D:\\excelfile.xls", 3);
2.导出到sqlite数据库
Spread 支持把文件保存为 Stream,代码如下:
string fileName;
fileName = "..\\..\\bin\\savespreadstream.xml";
System.IO.Stream stream;
stream = System.IO.File.Create(fileName);
fpSpread1.Save(stream, false);

不知道您的数据库结构是什么样的?是一些关系表吗?您是想将数据导入某些表吗?Spread没有提供特定的方法将数据导出到数据库,只能导出成excel,txt(xml,csv)文件,您必须自己写逻辑将tet或stream转化成数据库可以识别的格式导入。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部