Asp.Net(c#)如何从数据库中读取Word并且显示到页面的NTKO Office控件内 100
各位大侠,我很急啊,希望各位大侠帮帮小弟.我已经用C#吧Word数据存入数据库内了,存进去是二进制文件类型(image数据类型)但是怎么读出来并且显示到aspx的页面里的...
各位大侠,我很急啊,希望各位大侠帮帮小弟.
我已经用C#吧Word数据存入数据库内了,存进去是二进制文件类型(image数据类型)
但是怎么读出来并且显示到aspx的页面里的NTKO office控件内呢??
(NTKO Office 就是一个能把office界面直接显示到web中的东西,当然也能进行相应的office 操作)
this is a question!
哦 数据库用的是SQLServer2005
开发工具是 Visual Stdio 2005
注意: 我读出来不是要生成一个文件,而是要直接显示到页面内的OFFICE里面,怎么搞。 最好把代码贴上来。
那位高人解决了的话外加100分奉上。 展开
我已经用C#吧Word数据存入数据库内了,存进去是二进制文件类型(image数据类型)
但是怎么读出来并且显示到aspx的页面里的NTKO office控件内呢??
(NTKO Office 就是一个能把office界面直接显示到web中的东西,当然也能进行相应的office 操作)
this is a question!
哦 数据库用的是SQLServer2005
开发工具是 Visual Stdio 2005
注意: 我读出来不是要生成一个文件,而是要直接显示到页面内的OFFICE里面,怎么搞。 最好把代码贴上来。
那位高人解决了的话外加100分奉上。 展开
3个回答
展开全部
给你一个思路,你可以让用户直接上传附件,你在服务器确定一个文件夹做目录让用户上传的文件都复制到这个文件里面。 这样就不管用户上传的什么文件, 都可以提供下载和浏览!
保存:
HttpFileCollection files = HttpContext.Current.Request.Files;
HttpPostedFile postedFile = null;
if (fileName != "")
{
fileExtension = System.IO.Path.GetExtension(fileName);
postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("../Attach Files/[这里是你要保存的文件目录名,要确定好路径]") + newFileName);
}
这里是打开或下载: 我这里有连接数据库改了名字,你可以自己看试着修改!
SystemDbOperator sysDbOperator = new SystemDbOperator();
DataSet tmpDS = sysDbOperator.Query(strSQL);
if (!Util.IsNull(tmpDS)) {
string strFilePath = HttpContext.Current.Request.MapPath("Attach Files/") + fileName;//路径根据实际情况而定
if (!File.Exists(strFilePath)) {
strScript = "<script>alert('该文件不存在!');window.close()</script>";
ClientScript.RegisterStartupScript(this.GetType(), "提示", strScript);
return;
}
//打开文件流读取文件DownLoadPage.aspx?FileName = " + fileName;
FileStream fs = new FileStream(strFilePath, FileMode.Open);
string OldFileName = tmpDS.Tables[0].Rows[0]["FileName"].ToString();
//将文件信息以字节流方式保存到数组
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close();
//向页面输出字节流 实现下载效果
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(OldFileName));
Response.BinaryWrite(bytes);
Response.End();
保存:
HttpFileCollection files = HttpContext.Current.Request.Files;
HttpPostedFile postedFile = null;
if (fileName != "")
{
fileExtension = System.IO.Path.GetExtension(fileName);
postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("../Attach Files/[这里是你要保存的文件目录名,要确定好路径]") + newFileName);
}
这里是打开或下载: 我这里有连接数据库改了名字,你可以自己看试着修改!
SystemDbOperator sysDbOperator = new SystemDbOperator();
DataSet tmpDS = sysDbOperator.Query(strSQL);
if (!Util.IsNull(tmpDS)) {
string strFilePath = HttpContext.Current.Request.MapPath("Attach Files/") + fileName;//路径根据实际情况而定
if (!File.Exists(strFilePath)) {
strScript = "<script>alert('该文件不存在!');window.close()</script>";
ClientScript.RegisterStartupScript(this.GetType(), "提示", strScript);
return;
}
//打开文件流读取文件DownLoadPage.aspx?FileName = " + fileName;
FileStream fs = new FileStream(strFilePath, FileMode.Open);
string OldFileName = tmpDS.Tables[0].Rows[0]["FileName"].ToString();
//将文件信息以字节流方式保存到数组
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close();
//向页面输出字节流 实现下载效果
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(OldFileName));
Response.BinaryWrite(bytes);
Response.End();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询