中国站长下载-为中国站长提供最好最全的建站资源! 首 页发布资源有事留言繁體中文
设为首页
加入收藏
联系我们
 
您当前的位置:中国站长下载 -> 文章中心 -> 网页编程 -> ASP编程 -> 文章内容  虚拟主机 域名注册 退出登录 用户管理
栏目导航
· ASP编程 · .NET编程
· PHP编程 · JSP编程
· CGI 专区
热门文章
· sndvol32 - sndvol3...
· [组图] FLASH:《大话李白》...
· 个人网站到底能赚多...
· [图文] Rundll.exe是病毒吗...
· [组图] Flash:制作MV
· 价值12万元的网站SE...
· 网站创业者,你需要...
· 一个成功的网站设计...
· [图文] FLASH:韩国导航条解...
· 中国网站的赚钱模式...
相关文章
· ASP文件操作--列出目...
· ASP文件中的安全问题...
· ASP文件上传原理分析...
· ASP文件上传原理分析...
· ASP文件上传原理分析...
· Web标准发展建议与实...
· [组图] Photoshop个性桌面设...
· 在asp文件中访问fla...
· ASP文章系统解决方案...
· ASP文件上传原理分析...
ASP文件上传原理分析及实现实例(3)
作者:不详  来源:不详  发布时间:2006-8-13 0:26:24  发布人:chinazhan

 减小字体 增大字体

     程序中使用了文件对象,这样在Upload.ASP中采用BinaryRead方法读来的原始数据就不仅仅是选择的文件本身的数据,还包含该文件在用户硬盘上的路径、类型、提交页面的表单等相关信息的描述,这样我们就需从中提取出文件的具体内容。根据分析,数据的头部信息与数据的分界线是两对回车换行符,尾部也有分隔信息,我们可以采用类似以下的方法获取文件数据。
  Dim FormData.FormSize,DataStart,CLStr,DivStr
  FormSize=Request.TotalBytes
  FormData=Request.BinaryRead(FormSize)
  CLStr=ChrB(13)&ChrB(10)
  DataStart=InStrB(FormData.CLStr&CLStr)+4
  '4是两对回车换行符的长度
  DivStr=LeftB(FormData,InStrB(FormData,CLStr)-1)
  DataSize=InStrB(DataStart+1,FormData,DivStr)-DataStart-2
  FormData=MidB(FormData,DataStart,DataSize)
  
    FormData就是文件的内容了。
  
    中间根据需要,可进行相应的处理。最后的工作就是将文件保存了。保存的方法可以有两种:一种是利用VB或VC之类程序中的二进制文件操作方法,在工程中加入适当的类型库,最终编译成DLL文件,使用时再将该DLL文件注册就可以了。文件存贮程序如下:
  Public Function SaveFile(Pathname As String) As String
      Dim objContext As ObjectContext
      Dim objRequest As Request
   Set objContext=GetObjectContext()
      Set objRequest=objContext("Request")
      '以下的一段代码是进行文件存贮的有关操作
   Dim FormData() As Byte,CLStr,DivStr
      Dim DataStart As Long,DataSize As Long
      DataSize=objRequest.TotalBytes
      Redim FormData(DataSize-1)
      FormData=objRequest.BinaryRead(DataSize)
      CLStr=ChrB(13) & ChrB(10)
      DataStart=InStrB(FormData,CLStr & CLStr)+4
      DivStr=LeftB(FormData,InStrB(FormData,CLStr)-1)
      DataSize=InStrB(DataStart+1,FormData,DivStr)-DataStart-2
      FormData=MidB(FormData,DataStart,DataSize)
      '创建一个二进制文件并将FormData写入其中
      Open Pathname For Binary As 1
      Put #1,,FormData
      Close #1
      SaveFile="OK!"
     End Function
  
  
    做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。

 
[] [返回上一页] [打 印] [收 藏]
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
中国站长下载
中国站长下载

本页只接受PR>=4 IT类站点连接,申请连接,谢谢您们的支持!希望我们的下载站能够真正帮到中国的站长们!
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图
Copyright © 2005-2006 ChinaZhan.Net. All Rights Reserved .