发新话题
打印

向高手们求助

向高手们求助

如何将数据库(sql2000)中二进制的文本(如:word),用ASP.NET将内容显示在页面,并将文档保存在磁盘上

TOP

好有难度啊?
你可以让用户下载成WORD文档,但不一定能将内容显示在页面上.
下载可以直接将数据库中的内容Respose.write给IE,注意头要改成WORD
换个头像,看见广告就眼红,直接封ID。

TOP

请问数据库内容下载有类似例子么,谢谢?

TOP

<%
'-------------------------------------------------------------------------------------
' 函数:function ShowJpegField(field)
' 作者: Neil Chen(木野狐)
' Date: 2003-12-6 更新
' 功能: 取得保存 jpeg 图片的字节数组中的 SOI marker 开始位置, 并从该位置输出真正的图片信息
' 注: jpeg 格式的 SOI marker : FFD8
' bmp 格式:424D
' 参数: 图片字段
' 返回值:
' 调用范例:ShowJpegField(rs("picture1"))
' 注意: 调用此函数之前, 需要先申明 response.write 的 MIME 类型为 "image/jpeg"
'-------------------------------------------------------------------------------------
function ShowJpegField(field)
  dim size, i, j
  '要输出字段的总字节数
  size = field.ActualSize

  '循环找到 SOI marker 的位置
  for i = 1 to size
    if AscB(MidB(field, i, 1)) = &HFF and AscB(MidB(field, i + 1, 1)) = &HD8 then
      exit for
    end if
  next

  '忽略前面的无用信息, 从 SOI marker 开始输出真正的图片信息
  for j = i to size
    response.BinaryWrite MidB(field, j, 1)
  next
end function
%>

<%
'-------- 主程序开始 -----------------------------
dim conn
set conn = Server.CreateObject("ADODB.Connection")
conn.open("Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=123;Data Source=MARK")

sql = "select * from xinxi_mishuchu"
set rs = conn.execute(sql)

'声明输出类型, 清空输出缓冲区
response.buffer = true
response.clear
response.ContentType = "image/jpeg"

'调用函数输出图片
ShowJpegField(rs("picture1"))


rs.close : set rs = nothing
conn.close : set conn = nothing
%>
换个头像,看见广告就眼红,直接封ID。

TOP

这是一个显示图片的例子,可以将response.ContentType 换成Word的参数即可,如

response.ContentType = "application/msword"
response.BinaryWrite (rs("word字段"))
换个头像,看见广告就眼红,直接封ID。

TOP

发新话题