`
xqf222
  • 浏览: 126969 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

ASP中设计和使用类1

 
阅读更多
'-----------------------------------------------------
' 描述: Asp打包类
' 作者: 小灰(quxiaohui_0@163.com)
' 链接: http://asp2004.net http://blog.csdn.net/iuhxq http://bbs.asp2004.net
' 版本: 1.0 Beta
' 版权: 本作品可免费使用,但是请勿移除版权信息
'-----------------------------------------------------
Class Rar
Dim files,packname,s,s1,s2,rootpath,fso,f,buf
Private Sub Class_Initialize
Randomize
Dim ranNum
ranNum = Int(90000 * Rnd) + 10000
packname = Year(Now)&Month(Now)&Day(Now)&Hour(Now)&Minute(Now)&Second(Now)&ranNum&".asp2004"

rootpath = Server.MapPath("./")

Set files = server.CreateObject("Scripting.Dictionary")
Set fso = Server.CreateObject("Scripting.FileSystemObject")

Set s = server.CreateObject("ADODB.Stream"):s.Open:s.Type = 1
Set s1 = server.CreateObject("ADODB.Stream"):s1.Open:s1.Type = 1
Set s2 = server.CreateObject("ADODB.Stream"):s2.Open:s2.Type = 2
End Sub

Private Sub Class_Terminate
s.Close:Set s = Nothing
s1.Close:Set s1 = Nothing
s2.Close:Set s2 = Nothing

Set fso = Nothing
End Sub

Public Sub Add(obj)
If fso.FileExists(obj) Then
Set f = fso.GetFile(obj)
files.Add obj,f.Size
ElseIf fso.FolderExists(obj) Then
files.Add obj,-1
Set f = fso.GetFolder(obj)
Set fc = f.Files
For Each f1 in fc
Add(LCase(f1.Path))
Next
End If
End Sub

Public Sub Pack
Dim str
a = files.Keys
b = files.Items
for i=0 to files.count-1
If b(i)>=0 Then
s.LoadFromFile(a(i))
buf = s.Read
If Not IsNull(buf) Then s1.Write(buf)
End If
str = str & b(i)&">"&Replace(a(i),rootpath,"")&vbCrLf
next
str = CStr(Right("000000000"&len(str),10)) & str
buf = TextToStream(str)
s.Position = 0
s.Write buf
s1.Position = 0
s.Write s1.Read
s.SetEOS
s.SaveToFile(packname)
End Sub

Public Sub UnPack

If Not fso.FolderExists(rootpath) Then
fso.CreateFolder(rootpath)
End If
Dim size
'转换文件大小
s.LoadFromFile(packname)
size = CInt(StreamToText(s.Read(10)))
str = StreamToText(s.Read(size))
arr = Split(str,vbCrLf)

for i=0 to Ubound(arr)-1
arrFile = Split(arr(i),">")
If arrFile(0) < 0 Then
If Not fso.FolderExists(rootpath&arrFile(1)) Then
fso.CreateFolder(rootpath&arrFile(1))
End If
ElseIf arrFile(0) >= 0 Then
If fso.FileExists(rootpath&arrFile(1)) Then
fso.DeleteFile(rootpath&arrFile(1))
End If
s1.Position = 0
buf = s.Read(arrFile(0))
If Not IsNull(buf) Then s1.Write(buf)
s1.SetEOS
s1.SaveToFile(rootpath&arrFile(1))
End If
Next
End Sub

Public Function StreamToText(stream)
If IsNull(stream) Then
StreamToText = ""
Else
Set sm = server.CreateObject("ADODB.Stream"):sm.Open:sm.Type = 1
sm.Write(stream)
sm.Position = 0
sm.Type = 2
sm.charset = "gb2312"
sm.Position = 0
StreamToText = sm.ReadText()
sm.Close:Set sm = Nothing
End If
End Function

Public Function TextToStream(text)
If text="" Then
TextToStream = "" '这里该如何写?空流?
Else
Set sm = server.CreateObject("ADODB.Stream"):sm.Open:sm.Type = 2:sm.charset = "gb2312"
sm.WriteText(text)
sm.Position = 0
sm.Type = 1
sm.Position = 0
TextToStream = sm.Read
sm.Close:Set sm = Nothing
End If
End Function
End Class

分享到:
评论

相关推荐

    ASP.NET公益类网站展示页设计

    总之,ASP.NET公益类网站展示页设计是一个涉及多方面技术的综合项目,包括前端界面设计、后端开发、数据库管理和安全措施等。通过合理规划和使用ASP.NET提供的工具,我们可以构建出一个既美观又功能强大的公益平台,...

    ASP程序设计_asp.net_

    本教程针对ASP程序设计的初中级学习者,通过实例和源码,将深入探讨以下几个关键知识点: 1. **ASP.NET基础**:ASP.NET的核心在于它的页面生命周期和事件模型,这使得开发者能够精确控制页面从加载到呈现的过程。...

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    11.6.4 在异步任务中使用缓存 11.6.5 多异步任务和超时 11.7 总结 第12章 文件和流 12.1 使用文件系统 12.1.1 Directory类和File类 12.1.2 DirectoryInfo类和FileInfo类 12.1.3 DriveInfo类 12.1.4...

    Asp.net通用自定义数据库访问类的设计和实现

    在IT行业中,Asp.NET是一种广泛使用的Web应用程序开发框架,由微软公司开发,它提供了构建动态网站、Web应用和Web服务的强大工具。本篇将详细探讨Asp.NET中通用自定义数据库访问类的设计与实现,以及如何利用C#语言...

    asp.net通用类

    1. **数据访问类**:在ASP.NET应用中,数据访问层是连接应用程序与数据库的关键。通用数据访问类通常封装了ADO.NET或ORM框架(如Entity Framework)的操作,提供添加、删除、修改和查询数据的接口。这可以避免在每个...

    Asp web课程设计

    ### Asp Web课程设计知识点详解 #### 一、课程设计题目选择与要求 根据课程设计的要求,学生需要从以下几个选项中选择一个主题进行设计: 1. **个人网站**:适合展示个人信息、技能、经历等内容。 2. **新闻发布...

    Asp.net类及Asp类毕业设计课题

    【Asp.net类毕业设计课题】 ASP.NET 是微软公司推出的一种用于构建动态Web应用程序的框架。它基于.NET Framework,提供了一种高效的、可扩展的、易于使用的开发环境,支持多种编程语言,如C#和VB.NET。以下是部分...

    asp.net网上商城购物系统毕业设计源码及毕业论文课程设计

    【ASP.NET网上商城购物系统】是一个基于ASP.NET技术构建的电子商务平台,主要针对学生的毕业设计或课程设计项目。这个系统通常包含用户管理、商品展示、购物车、订单处理、支付接口等多个核心模块,旨在模拟实际的...

    ASP.NET系统用户权限设计与实现

    * 在 ASP.NET 中,权限设计与实现可以通过用户控件来实现,利用用户控件可以将权限控制封装在控件中,然后在需要权限控制的页面中使用该控件。 * 通过这种方式,可以实现权限控制的逻辑分离,使得权限管理更加方便和...

    asp.net中javascript通用类

    "asp.net中javascript通用类"是指为ASP.NET应用程序设计的一组JavaScript函数或对象,这些函数或对象可以被多次重用,提高了代码的复用性和效率。通过在服务器端(ASP.NET)直接传递参数调用这些通用JS类,开发者...

    基于ASP.NET的电商系统的设计与实现

    通过对该系统的设计,简化代码实现过程,保留核心功能,可以在实践过程中掌握ASP.NET技术的部分使用方法,如对三层架构开发模式的熟悉、各种控件的使用、数据库的连接、登录注册功能逻辑代码的编写等,BootStrap前端...

    ASP新闻发布系统 毕业设计参考

    这个"ASP新闻发布系统毕业设计参考"是基于ASP技术的一个实例,旨在帮助初学者和毕业生理解网站开发的基本概念、架构和流程。下面将详细阐述这个系统中涉及的关键知识点。 1. ASP基础: ASP是一个基于服务器的脚本...

    ASP毕业设计——ASP+mysql美食网站设计(源代码+论文).zip

    【ASP毕业设计——ASP+mysql美食网站设计(源代码+论文).zip】是一个典型的基于ASP技术的毕业设计项目,涵盖了网页开发、数据库管理和网站功能实现等多个知识点。在这个设计中,开发者利用ASP(Active Server Pages...

    ASP.NET程序设计教程 崔连和 课后习题及答案

    1.ASP.NET 使用( 分级 )配置系统,使服务器环境和应用程序的设置更加简单。 2.ASP.NET 有两种常用的脚本语言( VBScript )和( JavaScript )。 3.计算机中安装( .NET Framework )以后,系统就可以运行...

    asp.net 设计模式

    在ASP.NET这一特定领域,设计模式的应用可以提高代码的可读性、可维护性和可扩展性,同时减少开发过程中的重复工作,提升开发效率。 ### MVC(Model-View-Controller)模式 MVC是ASP.NET中最常用的设计模式之一,...

    Web程序设计--ASP.NET实用网站开发课后习题及答案

    * ASP.NET 3.5 仍使用 ASP.NET 2.0 引擎 * ASP.NET 网站可以通过复制网站同步网站上的一个文件 * 在 Visual Studio 2008 环境中开发网站不需要安装 IIS 三、HTML * XHTML 是 HTML 的超集 * XHTML 中每个元素都有...

    BBS论坛asp.net项目实例 课程设计

    在这个项目中,我们将会深入探讨如何利用ASP.NET框架来设计、开发并实现一个功能完备的BBS论坛系统。 首先,ASP.NET是Microsoft推出的一种用于构建动态网站、web应用程序和web服务的开发框架。它基于.NET Framework...

    asp动态网站课程设计

    在"asp动态网站课程设计---汽车爱好者网站"这个项目中,我们主要会探讨如何使用ASP技术来构建一个针对汽车爱好者的互动平台。下面将详细介绍ASP的基础知识、网站设计的关键点以及如何将这些知识应用到汽车爱好者网站...

    Asp.net BBS毕业设计

    Asp.net BBS毕业设计是基于.NET Framework 2.0和SQL Server 2008的Web应用程序项目,主要用于学习和实践ASP.NET C#技术在论坛系统开发中的应用。这个项目涵盖了网页交互、数据库操作、用户认证以及内容管理等多个...

    asp.net课程设计

    同时,为了简化数据访问,我们还可以使用Entity Framework,这是一种ORM(对象关系映射)工具,它可以将数据库中的表映射为C#类,从而在代码中以面向对象的方式处理数据。 4. 用户界面(UI)设计: UI设计是用户...

Global site tag (gtag.js) - Google Analytics