CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  COM/DCOM/COM+

关于上传 下载的问题

楼主zcm123(老蝌蚪精 ●~ www.84ren.com 来了就下的源码站)2004-08-02 11:55:14 在 VB / COM/DCOM/COM+ 提问

我最近要编一个用于asp上的组建  
   
  实现功能如题。但是呢   我不知如何下手编(根本就不懂,怎么下手阿!)  
   
  各位大侠有原码   相关文档   的能否提供给在下呢?  
   
  必有重谢 问题点数:50、回复次数:12Top

1 楼net_lover(【孟子E章】)回复于 2004-08-02 15:27:54 得分 24

你搜索一个lyfupload,油现成的Top

2 楼net_lover(【孟子E章】)回复于 2004-08-02 15:28:39 得分 0

我这里有源代码,要的话留emailTop

3 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2004-08-02 15:41:13 得分 0

化境ASP无组件上传程序    
  http://www.chinaz.com/download/s/2178.asp  
  Top

4 楼zcm123(老蝌蚪精 ●~ www.84ren.com 来了就下的源码站)回复于 2004-08-02 15:41:50 得分 0

zcm821214@yahoo.com.cnTop

5 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2004-08-02 15:42:07 得分 25

我这里有aspcnupload的vb源代码  
  需要的话。留下emailTop

6 楼zcm123(老蝌蚪精 ●~ www.84ren.com 来了就下的源码站)回复于 2004-08-02 15:43:41 得分 0

如何写成vb编的组件呢?Top

7 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2004-08-02 15:54:53 得分 0

发了  
  Top

8 楼Jaron(WWW.JARON.CN)回复于 2004-08-02 15:58:26 得分 1

偶这里有源代码:  
   
          Option   Explicit  
   
          '-------------------   声明ASP对象---------------------  
          Private   MyScriptingContext   As   ScriptingContext  
          Private   MyRequest   As   Request  
          '---------------------------------------------------  
           
          '------------------定义全局变量----------------------  
          Private   binArray()   As   Byte                           '---全部数据的数组  
          Private   binDjf()   As   Byte                               '---定界符数组  
           
          Private   intDjfLen   As   Integer                       '---定界符数组的长度  
          Private   lngArrayLen   As   Long                         '---全部数据数组的长度  
          '---------------------------------------------------  
           
  Public   Sub   OnStartPage(PassedScriptingContext   As   ScriptingContext)  
   
          '------------------定义局部变量----------------------  
          Dim   varByteCount  
          Dim   i  
          '---------------------------------------------------  
           
          '------------------建立ASP对象-----------------------  
          Set   MyScriptingContext   =   PassedScriptingContext  
          Set   MyRequest   =   MyScriptingContext.Request  
          '---------------------------------------------------  
           
          '------------------读取客户端传来的全部数据-----------  
          varByteCount   =   MyRequest.TotalBytes  
          lngArrayLen   =   varByteCount   -   1  
          ReDim   binArray(varByteCount   -   1)  
          binArray   =   MyRequest.BinaryRead(varByteCount)  
          '---------------------------------------------------  
           
          '--------------------获取定界符---------------------  
          intDjfLen   =   0  
          Do   Until   binArray(intDjfLen   +   1)   =   13  
                intDjfLen   =   intDjfLen   +   1  
          Loop  
          ReDim   binDjf(intDjfLen)  
          For   i   =   0   To   intDjfLen  
              binDjf(i)   =   binArray(i)  
          Next  
          '---------------------------------------------------  
  End   Sub  
  Private   Function   FindTheDjf(lngStart   As   Long)   As   Long  
   
          '******************************参数说明  
          '*                                                                                                                                   *  
          '*         lngStart:   寻找的起始位置                                                                             *  
          '*         返回值:   成功——   找到时的地址,失败——   -1                                         *  
          '*                                                                                                                                   *  
          '*******************************************************************  
           
          '------------------定义局部变量----------------------  
          Dim   i   As   Integer  
          Dim   s   As   Long  
          Dim   DjfOk   As   Integer  
          '---------------------------------------------------  
           
          '-----------------获取定界符的起始位置--------------------  
          s   =   lngStart  
          Do   While   1  
                DjfOk   =   1  
                For   i   =   0   To   intDjfLen  
                      If   binDjf(i)   <>   binArray(s   +   i)   Then  
                            DjfOk   =   0  
                            Exit   For  
                      End   If  
                Next  
                If   DjfOk   =   1   Then  
                    FindTheDjf   =   s  
                    Exit   Do  
                Else  
                    s   =   s   +   1  
                    If   s   >=   lngArrayLen   -   intDjfLen   Then  
                          FindTheDjf   =   -1  
                          Exit   Do  
                    End   If  
                End   If  
          Loop  
          '--------------------------------------------------------------  
  End   Function  
   
           
  Private   Function   FindTheName(nm   As   String)   As   Long  
          '******************************参数说明*****************************  
          '*                                                                                                                                   *  
          '*         nm:   要寻找的   Form   元素名                                                               *  
          '*         返回值:   成功——   找到时的地址,失败——   -1                                     *  
          '*                                                                                                                                   *  
          '*******************************************************************  
           
          '------------------定义局部变量----------------------  
          Dim   s   As   Long  
          Dim   e   As   Long  
          Dim   i   As   Long  
           
          Dim   binTmp()   As   Byte  
          Dim   strName   As   String  
          '---------------------------------------------------  
           
          '------------------寻找要取得值的Form   元素名------------------------  
          s   =   0  
          Do   While   1  
                s   =   FindTheDjf(s)  
                If   s   <>   -1   Then  
                    s   =   s   +   intDjfLen   +   41  
                    e   =   s  
                    Do   While   binArray(e   +   1)   <>   34  
                          e   =   e   +   1  
                    Loop  
                    ReDim   binTmp(e   -   s)  
                    For   i   =   s   To   e  
                            binTmp(i   -   s)   =   binArray(i)  
                    Next  
                    strName   =   StrConv(binTmp,   64)  
                    If   StrComp(nm,   strName)   =   0   Then  
                          FindTheName   =   e   +   1  
                          Exit   Do  
                    End   If  
                Else  
                    FindTheName   =   -1  
                    Exit   Do  
                End   If  
          Loop  
          '--------------------------------------------------------------  
  End   FunctionTop

9 楼Jaron(WWW.JARON.CN)回复于 2004-08-02 16:00:35 得分 0

Public   Function   GetTheValue(nm   As   String)   As   String  
          '******************************参数说明*****************************  
          '*                                                                                                                                   *  
          '*         nm:   要取得值的   Form   元素名                                                                       *  
          '*                                                                                                                                   *  
          '*******************************************************************  
           
          '------------------定义局部变量----------------------  
          Dim   s   As   Long  
          Dim   e   As   Long  
          Dim   i   As   Long  
           
          Dim   strTmp   As   String  
          Dim   binTmp()   As   Byte  
          '-----------------------------------------------------------  
           
          '-----------------寻找数据的起始位置和结束位置-----------------  
          s   =   FindTheName(nm)  
          If   s   =   -1   Then  
                GetTheValue   =   ""  
                Exit   Function  
          End   If  
          s   =   s   +   5  
          e   =   FindTheDjf(s)   -   3  
          '-----------------------------------------------------------  
           
          '----------------处理输入的数据为空的情况------------------  
          If   e   -   s   <   0   Then  
                GetTheValue   =   ""  
                Exit   Function  
          End   If  
          '-----------------------------------------------------------  
           
          '-----------------得到数据值------------------------  
          ReDim   binTmp(e   -   s)  
          For   i   =   s   To   e  
                binTmp(i   -   s)   =   binArray(i)  
          Next  
          strTmp   =   StrConv(binTmp,   64)  
          GetTheValue   =   strTmp  
          '-----------------------------------------------------------  
  End   Function  
   
  Public   Function   SaveTheFile(strTag   As   String,   strPath   As   String)   As   String  
           
          '******************************参数说明*****************************  
          '*                                                                                                                                   *  
          '*       strTag:         HTML   FORM中要上载的文件类型INPUT标签名                           *  
          '*       strPath:       目标路径名,   末尾不带"\"。如:"c:\images\upload"           *  
          '*       返回值:         成功——文件名,失败——   ""                                               *  
          '*                                                                                                                                   *  
          '*******************************************************************  
           
          '------------------定义局部变量----------------------  
          Dim   s   As   Long                                         '起始位置  
          Dim   e   As   Long                                         '结束位置  
          Dim   i   As   Long  
           
          Dim   fileNo   As   Integer  
           
          Dim   strFileName   As   String  
          Dim   strTmp   As   String  
          Dim   binTmp()   As   Byte  
          Dim   newfile   As   String  
          '-----------------------------------------------------------  
           
          '---------得到文件名的起始位置---------------------------  
          s   =   FindTheName(strTag)  
          If   s   =   -1   Then  
                SaveTheFile   =   ""  
                Exit   Function  
          End   If  
          s   =   s   +   13  
          '-----------------------------------------------------------  
           
          '----------得到文件名的结束位置---------------------------  
          i   =   s  
          Do   While   1  
              If   binArray(i)   =   34   Then  
                  Exit   Do  
              End   If  
              i   =   i   +   1  
          Loop  
          e   =   i   -   1  
          '--------------------------------------------------------  
           
          '---------------处理客户端没有上载文件的情况---------------  
          If   e   -   s   <   0   Then  
                SaveTheFile   =   ""  
                Exit   Function  
          End   If  
          '-----------------------------------------------------------  
           
          '-------------------得到不带源路径的文件名-------------------  
          For   i   =   e   To   s   Step   -1  
                If   Chr(binArray(i   -   1))   =   "\"   Then  
                      s   =   i  
                      Exit   For  
                End   If  
          Next  
          ReDim   binTmp(e   -   s)  
          For   i   =   s   To   e  
                binTmp(i   -   s)   =   binArray(i)  
          Next  
          strTmp   =   StrConv(binTmp,   64)  
          newfile   =   Year(Now())   &   Month(Now())   &   Day(Now())   &   "_"   &   Replace(Time(),   ":",   "")   &   "."   &   Right(strTmp,   3)  
          strTmp   =   newfile  
          strFileName   =   strTmp  
          '-------------------------------------------------------------  
           
          '-----------------建立目标文件名-------------------------  
          strTmp   =   strPath   &   "\"   &   strTmp  
          '-------------------------------------------------------------  
           
          '-----------------寻找文件数据的起始位置------------------  
          i   =   e  
          Do   While   1  
                If   binArray(i   -   4)   =   13   And   binArray(i   -   3)   =   10   And   binArray(i   -   2)   =   13   And   binArray(i   -   1)   =   10   Then  
                      s   =   i  
                      Exit   Do  
                End   If  
                i   =   i   +   1  
          Loop  
          '-------------------------------------------------------------  
           
          '-----------------寻找文件数据的结束位置------------------  
          e   =   FindTheDjf(s)   -   3  
          '-------------------------------------------------------------  
                   
          '----------------------把文件数据存盘---------------------  
          fileNo   =   FreeFile()                                                                 '为了防止存在同名文件,就先打开一个同名文件,  
          Open   strTmp   For   Binary   Access   Write   As   #fileNo           '然后再删除它  
          Put   #fileNo,   ,   "temp"  
          Close   #fileNo  
          Kill   strTmp  
           
          fileNo   =   FreeFile()  
          Open   strTmp   For   Binary   Access   Write   As   #fileNo  
           
          If   e   -   s   >=   0   Then                                                 '如果   e-s<0   ,   则是一个空文件  
                ReDim   binTmp(e   -   s)  
                For   i   =   s   To   e  
                      binTmp(i   -   s)   =   binArray(i)  
                Next  
                Put   #fileNo,   ,   binTmp  
          End   If  
           
          Close   #fileNo  
          '-------------------------------------------------------------  
           
          SaveTheFile   =   strFileName                     '成功,返回文件名  
  End   Function  
                   
   
   
  Top

10 楼zcm123(老蝌蚪精 ●~ www.84ren.com 来了就下的源码站)回复于 2004-08-02 16:04:59 得分 0

谢谢各位版主   尤其是web版的  
  下面结贴Top

11 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2004-08-02 16:08:49 得分 0

晕  
  看来我也应该贴代码Top

12 楼liu9965012()回复于 2004-08-04 09:16:41 得分 0

那位大哥能发份给我吗?谢谢  
  ZYL1018@163.comTop

相关问题

  • ftp上传、下载。。。。。。。。。
  • 上传和下载???
  • QQ上传下载
  • 关于上传和下载
  • 文件的上传下载
  • 上传下载文件
  • 上传下载问题,,
  • 上传下载进度条
  • 请问那里有“上传,下载”的组件下载?
  • 哪里有传真软件可下载?

关键词

  • 数据
  • asp
  • bintmp
  • findthedjf
  • findthename
  • 数组
  • intdjflen
  • myscriptingcontext
  • binarray
  • nm

得分解答快速导航

  • 帖主:zcm123
  • net_lover
  • online
  • Jaron

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo