艾恩ASP无组件上传类(上传组件)说明文档(from www.sysoft.cc)
艾恩ASP无组件上传类(上传组件)说明文档
2010-1-18 By Anlige
一、简介
自从接触ASP就开始接触上传,看过一些上传类,但是总感觉封装的还是不够简单,因此自己尝试
写一个能够用最少最简单的代码实现各种上传方式的上传类。
在学校期间就开始写,一点点的完善、优化,到现在的版本,现在的版本能适应各种上传方式。上
传类的主要的功能如下:
1、自由设置最大上传大小、单文件最大上传大小
2、自由设置允许上传的文件类型
3、可设置文本的编码,以适应各种上传环境
4、内置进度条,a用户可选择开启和关闭
5、多种错误状态处理
6、多种文件保存方式:原文件名、随机文件名、用户自定义文件名
7、自由选择是否覆盖已存在文件
8、完整保存表单数据,支持同名表单,不支持同名文件域
注意:
1、特别注意Form一定要加上enctype="multipart/form-data"属性,method属性值必须是post,否
则上传会出错
2、request.form()方法获取数据失效,请使用UpLoad.forms()
3、上传前请确认保存文件的文件夹有读写权限,若不可写则会出现"文件无法写入"错误,解决方法
http://dev.mo.cn/show.asp?id=81
二、调用方法
1、无组件类的调用方法:
Dim Upload
set Upload = new AnUpLoad
2、组件的调用方法:
Dim Upload
Set Upload = server.CreateObject("Jo.Upload")
注意:上传属性的设置必须在调用Upload.GetData()之前。
简单调用示例:
Dim Upload
set Upload=new AnUpLoad ‘Set Upload = server.CreateObject("Anasp.Anupload")
Upload.SingleSize=1024*1024*1024 ‘设置单个文件最大上传限制,按字节计;默认为不限制
Upload.MaxSize=1024*1024*1024 ‘设置最大上传限制,按字节计;默认为不限制
Upload.Exe="bmp|rar|pdf|jpg|gif" ‘设置合法扩展名,以|分割
Upload.Charset="gb2312" ‘设置文本编码,默认为gb2312
Upload.openProcesser=false ‘禁止进度条功能,如果启用,需配合客户端程序
Upload.GetData() ‘获取并保存数据,必须调用本方法
三、类说明
上传涉及2个类-AnUpLoad(关键上传类)和UploadFile(文件类,保存文件相关信息),下面分别
说明:
1、AnUpLoad(关键上传类)
属性:属性名 读/写 说明
Mode 只写 数据读取方式,建议使用默认值,性能比较好。
MaxSize 只写 允许上传的最大字节数。
SingleSize 只写 允许上传的单文件的最大字节数。
Exe 只写 允许上传的扩展名,以|分隔。不设置则允许所有。*
也匹配所有
CharSet 只写 设置编码,默认为GB2312。如果在utf-8的页面使用,
请设置为utf-8
ErrorID 只读 上传过程发生错误的ID号,大于0代表上传出错
FileCount 只读 上传文件的数量
Description 只读 上传过程中的描述,ErrorID大于0则是错误描述
Version 只读 上传类/组件的版本号
TotalSize 只读 上传文件的的总大小
ProcessID 只读 无刷新上传的进程ID,由客户端传递
openProcesser 只写 是否开启进度条
LostTime 只读 上传使用的时间,不包括保存文件的时间
方法:
方法原型 说明
GetData() 处理上传的数据,没有任何参数也没有返回值
GetSize(Byval Size) 作用 格式化数字为可直接识别的文件大小表示方式
参数 Size:必选,文件大小的数字表示方式
返回值 格式化后的文件大小的文本表示方式
说明 例如,1024返回1KB
Forms(Byval formname) 作用 获取表单数据
参数 formname:表单名字,必选
返回值 表单值
说明 若formname为-1,返回一个包含所有表单项的一个
dictionary对象
Files(Byval formname) 作用 获取文件类
参数 formname:文件域的名字,必选
返回值 包含文件信息的文件类。类详细说明请参考
UploadFile的说明
说明 若formname为-1,返回一个包含所有上传文件类的一
个dictionary对象
2、UploadFile(文件类(对象),保存文件相关信息)
由于本类(对象)为JScript对象,其属性都是可读写的,一些由程序自动处理的属性不建议
用户写入。属性:
属性名 说明
FormName 文件域名(name属性)
NewName 程序自动生成的文件名(时间+随机数)
LocalName 原文件名
FileName 保存到硬盘的文件名,调用saveToFile后有效
UserSetName 用户自定义文件名,不包含扩展名
ContentType 文件类型
Size 文件大小
value 文件数据
Path 文件在服务器的保存目录的路径
extend 文件的扩展名
方法:
方法原型 说明
SaveToFile
(Path,Option,OverWrite)
作用 将上传的文件保存到服务器
参数 Path:文件保存路径,必选。支持相对路径和绝对路
径
Option:文件名定义方式,可选。
默认为0,文件以程序自动生成的文件名保存;
-1,若用户设置了自定义文件名,则使用用户自
定义的文件名保存;
1,使用原文件名保存。
OverWrite:是否覆盖同名文件。
默认为true,覆盖同名文件;
false,不覆盖同名文件,若有同名文件,则重命
名文件(文件名后面加数字)
返回值 文件保存结果对象
说明 返回的对象有两个属性。
属性error:true(保存失败)/false(保存成功)
属性description:保存结果描述
GetBytes() 作用 获取文件的二进制数据
参数 无
返回值 文件的二进制数据
说明 取回文件的二进制数据,方便其他程序处理,例如
AspJpeg组件等
CreateFolder(folderPath) 作用 自动创建不存在的目录
参数 folderPath:要创建的文件路径,必选返回值 无
说明
GetFilePath() 自动将同名文件件重命名
四、关于
作者:Anlige(艾恩、Aien)
主页:Http:// dev.mo.cn
邮箱:[email protected]
五、版权信息
本说明对“艾恩ASP无组件上传类”以及“艾恩ASP上传组件”均有效。本类版权归原作者所有,您
可以无功能限制的免费使用本类(组件),请保留类文件内的相关的说明信息。
非常感谢您对本类(组件)的支持。
我的其他资源:http://dev.mo.cn/download.html
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。