原创的ASP文件上传函数库,比动网、amao的都差了很多,不过是学习的好资料

简介: 原创的ASP文件上传函数库,比动网、amao的都差了很多,不过是学习的好资料54powerman说明:如果你需要file表单的串值,用GetFullName("file")如果需要file表单的文件名,用GetFileName("file")如果需要...

原创的ASP文件上传函数库,比动网、amao的都差了很多,不过是学习的好资料

54powerman

说明:
如果你需要file表单的串值,用GetFullName("file")
如果需要file表单的文件名,用GetFileName("file")
如果需要file表单的扩展名,用GetExtName("file")
如果需要普通文本表单的值,用MyRequest("password")
如果需要file表单的二进制值,也是用MyRequest("file")
保存文件用SaveFile("file","myUpload.jpg")
写入数据库的格式:
Rs.AppandChunk MyRequest("file")


<%
'Program:54powerman
'EMail & MSN:54powerman@163.com
'QQ:19486554
'初始化数据
 Response.buffer=true
 FormData = Request.BinaryRead(Request.TotalBytes)
 bncrlf = ChrB(13)&ChrB(10)
 Set sr=CreateObject("Adodb.Stream")
 sr.Mode=3
 sr.Type=1
 sr.Open
 sr.Write FormData
 Init=sr
'常用函数
Function Str2B(Str)
 For i = 1 To len(Str)
  Str2B = Str2B&ChrB(Asc(Mid(Str,i,1)))
 Next
End Function

Function B2Str(Str)
 For i = 1 To LenB(Str)
  ThisCharCode = AscB(MidB(Str,i,1))
  If ThisCharCode < &H80 Then
   B2Str = B2Str & Chr(ThisCharCode)
  Else
   NextCharCode = AscB(MidB(Str,i+1,1))
   B2Str = B2Str & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
   i = i + 1
  End If
 Next
End Function

Function MyRequest(FormName)
 divider = leftb(FormData,inStrb(FormData,bncrlf)-1)
 Cur = inStrb(FormData,Str2B("name=")&ChrB(34)&Str2B(FormName)&ChrB(34))
 MyRequest=null
 DataStart=inStrb(Cur,FormData,bncrlf&bncrlf)+4
 DataEnd = inStrb(DataStart+1,FormData,divider)-DataStart
 TempStr = Midb(FormData,Cur,DataStart)
 If inStrb(TempStr,Str2B("filename=")) Then
  MyRequest = Midb(FormData,DataStart,DataEnd)
 else
  MyRequest = B2Str(Midb(FormData,DataStart,DataEnd))
 End If
End Function

Function GetFullName(FormName)
 divider = leftb(FormData,inStrb(FormData,bncrlf)-1)
 Cur = inStrb(FormData,Str2B("name=")&ChrB(34)&Str2B(FormName)&ChrB(34))
 DataStart=inStrb(Cur,FormData,Str2B("filename="))+10
 DataEnd = inStrb(DataStart+1,FormData,ChrB(34))-DataStart
 TempStr = Midb(FormData,Cur,DataStart)
 GetFullName = B2Str(Midb(FormData,DataStart,DataEnd))
End Function

Function GetFileName(FormName)
  FullName=GetFullName(FormName)
 GetFileName = Mid(FullName,InStrRev(FullName,"/")+1)
End Function

Function GetExpName(FormName)
 GetExpName = Mid(GetFileName(FormName),InStrRev(GetFileName(FormName),".")+1)
End Function

Function SaveFile(FormName,FileName)
 divider = leftb(FormData,inStrb(FormData,bncrlf)-1)
 Cur = inStrb(FormData,Str2B("name=")&ChrB(34)&Str2B(FormName)&ChrB(34))
 SaveFile=false
 DataStart=inStrb(Cur,FormData,bncrlf&bncrlf)+4
 DataEnd = inStrb(DataStart+1,FormData,divider)-DataStart

 set dr=CreateObject("Adodb.Stream")
    dr.Mode=3
    dr.Type=1
    dr.Open
    sr.Position=DataStart-1
    sr.CopyTo dr,DataEnd
    dr.SaveToFile FileName,2

    sr.Close
    set sr=nothing
    dr.Close
    set dr=nothing
    SaveFile=true
End Function

Function FileSize(FormName)
 divider = leftb(FormData,inStrb(FormData,bncrlf)-1)
 Cur = inStrb(FormData,Str2B("name=")&ChrB(34)&Str2B(FormName)&ChrB(34))
 FileSize=0
 DataStart=inStrb(Cur,FormData,bncrlf&bncrlf)+4
 FileSize = inStrb(DataStart+1,FormData,divider)-DataStart-2
End Function
%>

目录
相关文章
|
8月前
|
开发框架 前端开发 .NET
ASP.NET WEB——项目创建与文件上传操作
ASP.NET WEB——项目创建与文件上传操作
97 0
|
7月前
|
开发框架 JSON .NET
学习ASP.NET 中的 默认应用程序配置源
默认主机配置源 使用命令行配置提供程序的命令行参数
49 2
|
8月前
|
SQL 开发框架 .NET
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
131 0
|
8月前
|
开发框架 .NET
Asp.Net文件上传
Asp.Net文件上传
47 0
|
存储 开发框架 前端开发
ASP.NET Core MVC 从入门到精通之文件上传
ASP.NET Core MVC 从入门到精通之文件上传
215 0
|
开发框架 前端开发 JavaScript
ASP.NET Core MVC 从入门到精通之wwwroot和客户端库
ASP.NET Core MVC 从入门到精通之wwwroot和客户端库
277 0
|
开发框架 JavaScript 前端开发
ASP.NET Core WEB API 使用element-ui文件上传组件el-upload执行手动文件文件,并在文件上传后清空文件
ASP.NET Core WEB API 使用element-ui文件上传组件el-upload执行手动文件文件,并在文件上传后清空文件
581 0
ASP.NET Core WEB API 使用element-ui文件上传组件el-upload执行手动文件文件,并在文件上传后清空文件
|
开发框架 前端开发 .NET
|
开发框架 前端开发 .NET
[原创]Asp.net MVC 学习之路-003(增删改查,后端手工,前端生成)
[原创]Asp.net MVC 学习之路-003(增删改查,后端手工,前端生成)
[原创]Asp.net MVC 学习之路-003(增删改查,后端手工,前端生成)
|
存储 开发框架 安全
ASP.NET Core 3.0一个jwt的轻量角色/用户、单个API控制的授权认证库
ASP.NET Core 3.0一个jwt的轻量角色/用户、单个API控制的授权认证库
198 0
ASP.NET Core 3.0一个jwt的轻量角色/用户、单个API控制的授权认证库