聊天工具辦公軟件殺毒教程系統(tǒng)工具圖形圖像電腦學(xué)習(xí)應(yīng)用軟件網(wǎng)絡(luò)軟件蘋果應(yīng)用注冊碼網(wǎng)站教程技術(shù)開發(fā)安卓教程其它教程 您當(dāng)前所在位置:網(wǎng)視手游站 -> 網(wǎng)站教程 -> ASP文件上傳神功 第3重:集成類、多語種通用,使用方便 | ||
ASP文件上傳神功 第3重:集成類、多語種通用,使用方便發(fā)表時間:2024-05-29 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣: [摘要]這個問題已經(jīng)不是什么新鮮問題了,網(wǎng)上也有大把的教程,但大多數(shù)是授人以魚,而不授人以漁,經(jīng)過辛苦的資料收集,思考,調(diào)試,整理,我基本上已經(jīng)把這個問題從原理上搞清楚了,現(xiàn)在根據(jù)我自己的理解,在范例程序的基礎(chǔ)上,加以解釋,希望能對部分網(wǎng)友(比我還菜的:-))有所幫助。 請諸位大蝦能對其中的不正或不良這處... 這個問題已經(jīng)不是什么新鮮問題了,網(wǎng)上也有大把的教程,但大多數(shù)是授人以魚,而不授人以漁,經(jīng)過辛苦的資料收集,思考,調(diào)試,整理,我基本上已經(jīng)把這個問題從原理上搞清楚了,現(xiàn)在根據(jù)我自己的理解,在范例程序的基礎(chǔ)上,加以解釋,希望能對部分網(wǎng)友(比我還菜的:-))有所幫助。 請諸位大蝦能對其中的不正或不良這處予以指正。 程序中stream對象的用法上參考了“化境HTTP上傳程序 Version 2.0”在代碼,在此對稻香老農(nóng)和梁無懼表示衷心的感謝和由衷的敬意。 先來分析一下,為后面的數(shù)據(jù)分析算法打點基礎(chǔ),以下是我摘錄的一小段網(wǎng)頁中提交的二進制數(shù)據(jù): -----------------------------7d31ec15102d0 Content-Disposition: form-data; name="txtTitle" 滿腦的想法 -----------------------------7d31ec15102d0 Content-Disposition: form-data; name="filImage"; filename="F:\material\木紋背景\pic016.jpg" Content-Type: image/pjpeg ? JFIF C !!E.'.EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE?" ? } !1AQa"q2亼?#B繃R佯$3br? 侼s歊J佦=ǜ珻,%??Xm 銓鼽?幮??驲湕胄滙C? 儗 g?咶? tS?B矠:u隠c g不t凄L琰h`啨0p g殲41?9'$筵奆]眬?膁?摍? 渦"?? -----------------------------7d31ec15102d0 Content-Disposition: form-data; name="btnUpload" Upload -----------------------------7d31ec15102d0-- 藍色的字符的內(nèi)容我們應(yīng)該熟悉吧,中間的亂碼就是上傳的文件的內(nèi)容,其實我們要做的就是將這一堆數(shù)據(jù)進行分析,挑出對我們有用的數(shù)據(jù)保存下來就OK了。分析數(shù)據(jù)就是查找一些標(biāo)志性的內(nèi)容,如回車換行符,“----------”符號,用兩個指針確定兩個位置,然后提取數(shù)據(jù),我的算法不知道好不好,本人的數(shù)據(jù)結(jié)構(gòu)是學(xué)得很爛的,十分sorry。 以下是一個完事的應(yīng)用,其中的類定義可以與入另一個文件,使用的時候只要用 <!--include file="LjUpload.cls"--> 命令包含進來就可以了。 LjUpload.asp: <%@ Language=VBScript %> <% option explicit %> <script language=vbscript runat=server> private srmRequestData'adodb.stream對象,保存從form中提交來的所有數(shù)據(jù) private adTypeBinary'adodb.stream對象的叁數(shù):返回二進制數(shù)據(jù) private adTypeText'adodb.stream對象的叁數(shù):返回文本數(shù)據(jù) private adModeRead'adodb.stream對象的叁數(shù):對象可讀 private adModeWrite'adodb.stream對象的叁數(shù):對象可寫 private adModeReadWrite'adodb.stream對象的叁數(shù):對象可讀寫 class LjUpload'定義 |