SQL如何保存word数据,然后如何从SQL读取数据导出到word文档

秋风十里 秋风十里 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
1:问题一,如标题!
2:问题二,SQL保存word数据有几种实现方法。
3:问题三,我试过把word导进去数据,表字段类型是image,word文档转换成二进制进行保存数据库,但导出到word就出现乱码。

请各位大哥大姐有什么好的方法分享学习下,谢谢。最好有附加一个学习的网址。
下面是小弟实践的代码:
部分代码,不便之处敬请谅解。
代码上部分:把word数据保存到sql数据库中,保存过程为二进制代码。

FileStream fs = new FileStream(this.openFileDialog1.FileName, FileMode.Open);
byte[] value = new byte[fs.Length];
fs.Read(value, 0, value.Length);

sqlcom = new SqlCommand();
sqlcom.Connection = SqlCon();
sqlcom.Connection.Open();
sqlcom.CommandText = "insert into 导出数据到Word文档(WORD) values(@word)";
sqlcom.Parameters.Add("@word",SqlDbType.Image);
sqlcom.Parameters[0].Value = value;
sqlcom.ExecuteNonQuery();
sqlcom.Connection.Close();

MessageBox.Show("保存成功", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);


代码下部分:将数据二进制存进缓冲区byte中后进行解码,但这一步出现乱码。尝试过多种编码格式均无效。

byte[] by = null;
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(sqlcon,con);
da.Fill(ds);

by = (byte[])ds.Tables[0].Rows[0][0];

Console.WriteLine(by.Count().ToString());

Console.WriteLine(Encoding.UTF8.GetString(by,0,by.Length));
Console.WriteLine(Encoding.GetEncoding("GDK").GetString(by,0,by.Length));


执行结果:


希望能得到完美的解决方案。谢谢各位了
...全文

相关推荐

评论 6
收藏 已收藏
分享
返回顶部
秋风十里
C# 111,128 成员 642,537 内容