成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

ASP實(shí)現(xiàn)文件上傳的方法

瀏覽:206日期:2022-06-05 16:00:32

一.基于ASP的文件上傳實(shí)現(xiàn)原理分析
基本原理是:采用ADO Stream對(duì)象的BinaryRead方法將FORM中的所有數(shù)據(jù)讀出,從中截取出所需的文件數(shù)據(jù),以二進(jìn)制文件方式存盤(pán)。
下面是上傳文件頁(yè)面的一個(gè)例子(upload.htm):

<html>
<body>
<form name="Upload" Method="Post" Enctype="multipart/form-data" Action="Upload.asp">
<input type="file" name="FileName">
<INPUT TYPE="Submit" VALUE="Upload"></TD>
</form>
</body>
</html>

程序中使用了文件對(duì)象,這樣在Upload.asp中采用BinaryRead方法讀來(lái)的原始數(shù)據(jù)就不僅僅是選擇的文件本身的數(shù)據(jù),還包含該文件在用戶(hù)硬盤(pán)上的路徑、類(lèi)型、提交頁(yè)面的表單域名等相關(guān)信息的描述,這樣我們就需從中提取出文件的具體內(nèi)容。根據(jù)分析,數(shù)據(jù)的頭部信息與數(shù)據(jù)的分界線(xiàn)是兩對(duì)回車(chē)換行符,尾部也有分隔信息,我們可以采用類(lèi)似以下的方法獲取文件數(shù)據(jù)。

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是兩對(duì)回車(chē)換行符的長(zhǎng)度
DivStr=LeftB(FormData,InStrB(FormData,CLStr)-1)
DataSize=InStrB(DataStart+1,FormData,DivStr)-DataStart-2
FormData=MidB(FormData,DataStart,DataSize)
FormData就是文件的內(nèi)容了。

中間根據(jù)需要,可進(jìn)行相應(yīng)的處理。最后的工作就是將文件保存了。保存的方法可以有兩種:一種是利用VB或VC之類(lèi)程序中的二進(jìn)制文件操作方法,在工程中加入適當(dāng)?shù)念?lèi)型庫(kù),最終編譯成DLL文件,使用時(shí)再將該DLL文件注冊(cè)就可以了。文件存貯程序如下:

Public Function SaveFile(Pathname As String) As String
     Dim objContext As ObjectContext
     Dim objRequest As Request
  Set objContext=GetObjectContext()
     Set objRequest=objContext("Request")
     "以下的一段代碼是進(jìn)行文件存貯的有關(guān)操作
  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)
     "創(chuàng)建一個(gè)二進(jìn)制文件并將FormData寫(xiě)入其中
     Open Pathname For Binary As 1
     Put #1,,FormData
     Close #1
     SaveFile="OK!"
   End Function

第二種方法是利用ADO STREAM中提供的二進(jìn)制文件操作方法來(lái)完成,保存文件的語(yǔ)句是: StreamOBJ.SaveToFile (fileName,2)。在 這種操作中,我們可以將有關(guān)的操作存放在一個(gè)類(lèi)文件中,在應(yīng)用時(shí),直接將該類(lèi)文件包含在ASP程序中就可以了。具體處理方法,請(qǐng)參閱有關(guān)介紹。
二.文件上傳實(shí)現(xiàn)方法實(shí)例
實(shí)現(xiàn)文件上傳可使用組件或無(wú)組件方式。對(duì)于組件類(lèi),比如說(shuō)microsoft posting acceptor(簡(jiǎn)稱(chēng)mpa),就是微軟公司發(fā)布的一個(gè)免費(fèi)服務(wù)器組件,這類(lèi)組件的安裝也比較方便。對(duì)于微軟的mpa,運(yùn)行它的安裝文件就可以了。而一般的dll組件形式的,我們則需要進(jìn)行注冊(cè)。例如,要使用aspcnUP.dll,只要在Window 2000上執(zhí)行regsvr32 [path\]aspcnUP.dll,系統(tǒng)出現(xiàn)注冊(cè)成功的信息提示就可以使用該組件了;對(duì)于無(wú)組件類(lèi),在使用時(shí),只要在處理程序中包含以下的語(yǔ)句就可以了:

<!--#include FILE="upload.inc"-->
set upload=new upload_5xSoft "建立上傳對(duì)象

有關(guān)的屬性與操作方法,請(qǐng)參閱該組件的使用手冊(cè)。
下面是以aspcnUP.dll組件為例,上傳部分類(lèi)型文件的源代碼(upload.asp):

<% @ language="vbscript"
  Set fileUP=Server.CreateObject("aspcn.Upload")
  fileUP.Maxsize=200000
  fileUP.Path="d:\upfile"
  fileUP.Upload
  For i=0 to fileUP.Count
   fieldname=fileUP.FieldName(i)
   If fileUP.FileType(fieldname)="zip" Or ileUP.FileType(fieldname)="rar" Then
    fileUP.Save fieldname
   End If
  Next
  Set fileUP=Nothing
%>

瀏覽器/服務(wù)器應(yīng)用模式還在快速地發(fā)展著,在微軟新推出的ASP.NET中,已經(jīng)內(nèi)置了文件上傳的功能,使用非常簡(jiǎn)單方便。作為一種全新的技術(shù),ASP.NET并不只是ASP的簡(jiǎn)單升級(jí),它是一個(gè)用于Web開(kāi)發(fā)的全新框架,其中包含了許多新的特性。ASP.NET提供了更易于編寫(xiě)、結(jié)構(gòu)更清晰的代碼,利用這些代碼我們將會(huì)更容易地進(jìn)行再利用和共享,從而開(kāi)發(fā)出更多更實(shí)用的程序來(lái)。

標(biāo)簽: ASP
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
丝袜脚交一区二区| 久久99国产精品久久99果冻传媒| 亚洲欧美日韩久久| caoporn国产一区二区| 老司机亚洲精品| 亚洲最新视频在线播放| 亚洲图色在线| 亚洲国产精品精华液ab| av男人天堂一区| 4438成人网| 国内成+人亚洲+欧美+综合在线| 国产亚洲精品自拍| 亚洲狠狠丁香婷婷综合久久久| 国内精品久久久久国产盗摄免费观看完整版| 日韩精品在线一区| 国产精品 欧美精品| 欧美一卡二卡在线| 国产毛片一区二区| 欧美男女性生活在线直播观看| 日韩高清不卡一区二区| 久久久一二三| 亚洲成a人v欧美综合天堂下载| 国产一区二区三区的电影 | 久久亚洲综合| 国产精品电影一区二区三区| 国产成人午夜高潮毛片| 亚洲一区二区三区四区中文| 久久久天堂av| 丰满少妇久久久久久久| 欧美午夜一区二区| 午夜电影一区二区三区| 在线播放一区| 国产欧美一区二区在线| 国产精品18久久久| 欧美色图第一页| 亚洲va国产天堂va久久en| 亚洲精品少妇| 中文字幕一区二区日韩精品绯色| 97国产精品videossex| 日韩一区二区不卡| 韩国精品久久久| 一本色道综合亚洲| 亚洲高清免费视频| 国产欧美日韩一区二区三区| 亚洲欧洲一区二区在线播放| 91偷拍与自偷拍精品| 精品99999| 成人黄色软件下载| 777亚洲妇女| 韩国女主播成人在线| 色欧美日韩亚洲| 亚洲v日本v欧美v久久精品| 一本久道久久综合狠狠爱| 国产精品久久久久毛片软件| 亚洲国产二区| 国产精品的网站| 极品日韩久久| 日韩美女啊v在线免费观看| 亚洲欧美综合国产精品一区| 久久精品男人天堂av| 91欧美一区二区| 久久久91精品国产一区二区精品| 不卡在线视频中文字幕| 欧美大片顶级少妇| 99精品久久久久久| 国产欧美日韩三区| 国产精品成人一区二区网站软件| 欧美激情在线观看视频免费| 欧美成人嫩草网站| 国产女同性恋一区二区| 欧美精品播放| 国产精品精品国产色婷婷| 精品91免费| 亚洲免费观看高清| 国产精品人人爽人人做我的可爱| 午夜激情综合网| 色狠狠色噜噜噜综合网| 麻豆精品在线视频| 色噜噜狠狠色综合中国| 亚洲精品第1页| 在线中文字幕一区二区| 麻豆91精品91久久久的内涵| 欧美精品粉嫩高潮一区二区| 国产a级毛片一区| 国产色一区二区| 精品动漫一区| 亚洲国产cao| 欧美性大战xxxxx久久久| 国产成人综合视频| 国产丝袜在线精品| 一本综合久久| 青青草伊人久久| 欧美三级乱人伦电影| 国产成人av一区二区三区在线观看| 欧美日韩精品欧美日韩精品一| 国产一区二区在线看| 日韩一区二区高清| 99这里有精品| 午夜精品影院在线观看| 在线不卡中文字幕| 色综合天天综合色综合av | 欧美性一二三区| 成人午夜精品在线| 欧美国产日韩在线观看| 国产日韩亚洲| 免费在线观看不卡| 日韩三级高清在线| 91麻豆福利精品推荐| 亚洲精品视频自拍| 色国产精品一区在线观看| 欧美区一区二| 性欧美大战久久久久久久久| 欧美日韩色综合| 91在线一区二区三区| 伊人开心综合网| 欧美日韩欧美一区二区| 你懂的一区二区| 日韩av不卡在线观看| 欧美xxx久久| 一本色道久久综合亚洲精品不| 麻豆精品在线看| 国产欧美综合在线观看第十页| 夜夜嗨一区二区| 国产麻豆精品视频| 国产精品丝袜91| 久久婷婷丁香| 亚洲精品乱码久久久久久黑人| 91高清视频免费看| 91麻豆免费观看| 亚洲成人三级小说| 欧美一区二区三区系列电影| 欧美日韩91| 麻豆91在线播放| 国产精品毛片高清在线完整版| 久久精品官网| aaa欧美大片| 午夜一区二区三区在线观看| 欧美视频一区二| 亚洲网址在线| 国产专区综合网| 亚洲欧美一区二区在线观看| 欧美三级电影在线看| 亚洲小说欧美另类社区| 久久www免费人成看片高清| 国产网红主播福利一区二区| 亚洲一区欧美激情| 国产伦精品一区二区三区免费| 国产精品二三区| 欧美日韩中文国产| 亚洲一级高清| 国产精品一二三在| 一区二区三区精品| 91精品国产日韩91久久久久久| 国产日韩欧美在线播放不卡| 成人高清视频在线| 五月婷婷激情综合| 国产日韩在线不卡| 欧美日韩一卡二卡| 色婷婷综合中文久久一本| 欧美日韩国产欧| 国内成+人亚洲+欧美+综合在线| 亚洲人成亚洲人成在线观看图片 | 日韩av电影天堂| 中文字幕乱码日本亚洲一区二区| 久久人人精品| 91香蕉国产在线观看软件| 免费看欧美女人艹b| 亚洲色图一区二区三区| 日韩写真欧美这视频| 久久一区欧美| 在线看片成人| 国产精品亚洲一区二区三区在线| 亚洲成在人线在线播放| 国产精品国产三级国产aⅴ无密码| 6080午夜不卡| 一本色道久久综合亚洲91 | 欧美一级免费大片| 性欧美xxxx大乳国产app| 欧美日韩一区二区国产| 国产91丝袜在线播放九色| 日本欧美久久久久免费播放网| 国产精品美女久久久久高潮| 欧美精品在线一区二区| 欧美巨大另类极品videosbest | 欧洲精品在线观看| 国产日韩欧美综合精品| 欧美日韩综合精品| av激情成人网| 国产在线精品免费| 日韩高清在线观看| 亚洲午夜影视影院在线观看| 日本一二三四高清不卡| 精品久久久久久久久久久久久久久| 国产欧美日韩亚洲| 欧美精品播放| 91在线播放网址| 成人夜色视频网站在线观看| 久久69国产一区二区蜜臀| 婷婷国产在线综合| 亚洲视频网在线直播|