中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > 综合其它
无组件文件上传代码实例(3)
作者:佚名 时间:2007-09-24 16:01 出处:ASPX.CN技术资料中心 责编:月夜寒箫
              摘要:无组件文件上传代码实例(3)
'开始处理文件数据

Do while lenB(binHTTPHeader)>46

binHeaderData = LeftB(binHTTPHeader, INSTRB( binHTTPHeader, bnCRLF & bnCRLF )-1)

strHeaderData=bin2str(binHeaderData)

'读取上传文件的Content-Type

lngFileContentTypeStart=Instr(strHeaderData,"Content-Type:")+Len("Content-Type:")

strFileContentType=Trim(Mid(strHeaderData,lngFileContentTypeStart))

strFileContentType=Replace(strFileContentType,vbCRLF,vbNullString)

'读取上传的文件名

lngFileNameStart=Instr(strHeaderData,"filename="&chr(34))+Len("filename="&chr(34))

lngFileNameEnd=Instr(lngFileNameStart,strHeaderData,chr(34))

strFileName=Mid(strHeaderData,lngFileNameStart,lngFileNameEnd-lngFileNameStart)

strFileName=Trim(strFileName)

strFileName=Replace(strFileName,vbCRLF,vbNullString)

'读取上传文件数据

DataStart = INSTRB( binHTTPHeader, bnCRLF & bnCRLF ) + 4

DataEnd = INSTRB( DataStart + 1, binHTTPHeader, divider ) - DataStart

If strFileName<>"" Then

binFieldValue=MIDB( binHTTPHeader, DataStart, DataEnd )

'将上传的文件写入数据库

set conn = Server.CreateObject("ADODB.Connection")

conn.Open "DSN=abc"

SQL="select * from User_File"

set rs=server.CreateObject("ADODB.Recordset")

rs.Open sql,conn,3,3

rs.addnew

rs("UserID")=UserID

rs("FileContentType")=strFileContentType

rs("FileContent").AppendChunk binFieldValue

rs.update

rs.close

set rs=Nothing

conn.Close

set conn=Nothing

End if

binHTTPHeader=MIDB(binHTTPHeader,INSTRB( DataStart + 1, binHTTPHeader, divider ))

loop

%>

 

4。下载用户上传的文件

<%

Response.Buffer = true

Response.Clear

UserID=request("UserID")

Set conn=server.createobject("adodb.connection")

set rs=server.createobject("adodb.recordset")

conn.open "DSN=UploadFile"

rs.open "select * from User_File where UserID='"&UserID&"'",conn,3,3

Response.ContentType = rs("FileContentType")

lngOffset=0

conChunkSize=1024

lngPictSize=rs("FileContent").ActualSize

Do While lngOffset < lngPictSize

varChunk = rs("FileContent").GetChunk(conChunkSize)

Response.BinaryWrite varChunk

lngOffset = lngOffset + conChunkSize

If lngOffset > lngPictSize Then Exit Do

Loop

rs.close

set rs=Nothing

conn.close

set conn=nothing

%>

就是这些了,希望此方法对大家能有所帮助。:)

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有