asp源码打包成xml的工具
2008-06-20 00:00
549 查看
下边这个存为Pack.asp,打包文件时运行
下边这个存为Install.asp,安装XML打包文件时运行
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <%OptionExplicit%> <%OnErrorResumeNext%> <% Response.Charset="UTF-8"%> <% Server.ScriptTimeout=99999999%> <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <htmlxmlns="http://www.w3.org/1999/xhtml"> <head> <metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/> <title>文件打包程序</title> </head> <body> <% Dim ZipPathDir, ZipPathFile Dim startime, endtime '在此更改要打包文件夹的路径 ZipPathDir ="F:\www.yongfa365.com"' ZipPathFile ="update.xml" If Right(ZipPathDir,1)<>"\"Then ZipPathDir = ZipPathDir&"\" '开始打包 CreateXml(ZipPathFile) '遍历目录内的所有文件以及文件夹 Sub LoadData(DirPath) Dim XmlDoc Dim fso 'fso对象 Dim objFolder '文件夹对象 Dim objSubFolders '子文件夹集合 Dim objSubFolder '子文件夹对象 Dim objFiles '文件集合 Dim objFile '文件对象 Dim objStream Dim pathname, TextStream, pp, Xfolder, Xfpath, Xfile, Xpath, Xstream Dim PathNameStr response.Write("=========="&DirPath&"==========<br>") Set fso = server.CreateObject("scripting.filesystemobject") Set objFolder = fso.GetFolder(DirPath)'创建文件夹对象 Response.Write DirPath Response.flush Set XmlDoc = Server.CreateObject("Microsoft.XMLDOM") XmlDoc.load Server.MapPath(ZipPathFile) XmlDoc.async =False '写入每个文件夹路径 Set Xfolder = XmlDoc.SelectSingleNode("//root").AppendChild(XmlDoc.CreateElement("folder")) Set Xfpath = Xfolder.AppendChild(XmlDoc.CreateElement("path")) Xfpath.text = Replace(DirPath, ZipPathDir,"") Set objFiles = objFolder.Files ForEach objFile in objFiles If LCase(DirPath & objFile.Name)<> LCase(Request.ServerVariables("PATH_TRANSLATED"))Then Response.Write "---<br/>" PathNameStr = DirPath &""& objFile.Name Response.Write PathNameStr &"" Response.flush '================================================ '写入文件的路径及文件内容 Set Xfile = XmlDoc.SelectSingleNode("//root").AppendChild(XmlDoc.CreateElement("file")) Set Xpath = Xfile.AppendChild(XmlDoc.CreateElement("path")) Xpath.text = Replace(PathNameStr, ZipPathDir,"") '创建文件流读入文件内容,并写入XML文件中 Set objStream = Server.CreateObject("ADODB.Stream") objStream.Type=1 objStream.Open() objStream.LoadFromFile(PathNameStr) objStream.position =0 Set Xstream = Xfile.AppendChild(XmlDoc.CreateElement("stream")) Xstream.SetAttribute "xmlns:dt","urn:schemas-microsoft-com:datatypes" '文件内容采用二制方式存放 Xstream.dataType ="bin.base64" Xstream.nodeTypedValue = objStream.Read() Set objStream =Nothing Set Xpath =Nothing Set Xstream =Nothing Set Xfile =Nothing '================================================ EndIf Next Response.Write "<p>" XmlDoc.Save(Server.Mappath(ZipPathFile)) Set Xfpath =Nothing Set Xfolder =Nothing Set XmlDoc =Nothing '创建的子文件夹对象 Set objSubFolders = objFolder.SubFolders '调用递归遍历子文件夹 ForEach objSubFolder in objSubFolders pathname = DirPath & objSubFolder.Name &"\" LoadData(pathname) Next Set objFolder =Nothing Set objSubFolders =Nothing Set fso =Nothing EndSub '创建一个空的XML文件,为写入文件作准备 Sub CreateXml(FilePath) '程序开始执行时间 startime = Timer() Dim XmlDoc, Root Set XmlDoc = Server.CreateObject("Microsoft.XMLDOM") XmlDoc.async =False Set Root = XmlDoc.createProcessingInstruction("xml","version='1.0' encoding='UTF-8'") XmlDoc.appendChild(Root) XmlDoc.appendChild(XmlDoc.CreateElement("root")) XmlDoc.Save(Server.MapPath(FilePath)) Set Root =Nothing Set XmlDoc =Nothing LoadData(ZipPathDir) '程序结束时间 endtime = Timer() response.Write("页面执行时间:"& FormatNumber((endtime - startime),3)&"秒") EndSub %> </body> </html>
下边这个存为Install.asp,安装XML打包文件时运行
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <%OptionExplicit%> <%OnErrorResumeNext%> <% Response.Charset="UTF-8"%> <% Server.ScriptTimeout=99999999%> <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <htmlxmlns="http://www.w3.org/1999/xhtml"> <head> <metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/> <title>文件解包程序</title> </head> <body> <% Dim strLocalPath '得到当前文件夹的物理路径 strLocalPath = Left(Request.ServerVariables("PATH_TRANSLATED"), InStrRev(Request.ServerVariables("PATH_TRANSLATED"),"\")) Dim objXmlFile Dim objNodeList Dim objFSO Dim objStream Dim i, j Set objXmlFile = Server.CreateObject("Microsoft.XMLDOM") objXmlFile.load(Server.MapPath("update.xml")) If objXmlFile.readyState =4Then If objXmlFile.parseError.errorCode =0Then Set objNodeList = objXmlFile.documentElement.selectNodes("//folder/path") Set objFSO = CreateObject("Scripting.FileSystemObject") j = objNodeList.Length -1 For i =0To j If objFSO.FolderExists(strLocalPath & objNodeList(i).text)=FalseThen objFSO.CreateFolder(strLocalPath & objNodeList(i).text) EndIf Response.Write "创建目录"& objNodeList(i).text &"<br/>" Response.Flush Next Set objFSO =Nothing Set objNodeList =Nothing Set objNodeList = objXmlFile.documentElement.selectNodes("//file/path") j = objNodeList.Length -1 For i =0To j Set objStream = CreateObject("ADODB.Stream") With objStream .Type=1 .Open .Write objNodeList(i).nextSibling.nodeTypedvalue .SaveToFile strLocalPath & objNodeList(i).text,2 Response.Write "释放文件"& objNodeList(i).text &"<br/>" Response.Flush .Close EndWith Set objStream =Nothing Next Set objNodeList =Nothing EndIf EndIf Set objXmlFile =Nothing response.Write "文件解包完毕" %> </body> </html>
相关文章推荐
- asp源码打包成xml的工具
- 用asp实现把文件打包成Xml文件包,带解包的ASP工具附下载
- 用asp实现把文件打包成Xml文件包,带解包的ASP工具附下载
- asp.net 专业源代码打包工具
- IzPack打包工具 源码编译、安装、使用
- 用apktool工具反编译apk后怎么得到源码,重新打包,签名
- asp下利用xml打包网站文件
- ASP利用XML打包指定文件夹 并上传到WEB目录中,自行解包
- SQL Server XML查询工具(附源码)
- 【9秒实验室自研开源】Texture快速资源打包工具 for AS3-Starling源码下载
- 20种看asp源码的方法及工具
- Android apk多渠道自动打包 - 不提供工具,只提供源码
- 数据库自动打包压缩工具,asp.net + ATL完美组合
- 专业网站打包/解包asp工具(E文精装版本)!
- 用apktool工具反编译apk后怎么得到源码,重新打包,签名
- Android apk多渠道自动打包 - 不提供工具,只提供源码
- 产品打包工具的制作,ant,编译源码,打jar包,打tag,打war包,备份release版本等
- 20种看asp源码的方法及工具
- asp.net,jsp,php,安卓Android,ios计算机毕业课程设计源码免费打包下载
- asp.net+VML+XMLHTTP实现无刷新动态曲线图(附源码)