我试图使用VBScript来检查的几百.zip文件的内容。 基本上我想要做的是通过每个.ZIP运行,并找到所有wihtin该压缩文件的文件。 对于ZIP中的这些文件中的每一个,我想记录一下Oracle数据库的一些信息。 这信息是:文件名和文件修改日期。
到目前为止,我的解决方案已经被切出各拉链文件夹结构,然后通过临时文件夹与FSO对象中运行的临时文件夹。 然而,这已经被证明是非常缓慢的。
有没有办法来完成祖国这一点没有unziping的zip文件?
我试图使用VBScript来检查的几百.zip文件的内容。 基本上我想要做的是通过每个.ZIP运行,并找到所有wihtin该压缩文件的文件。 对于ZIP中的这些文件中的每一个,我想记录一下Oracle数据库的一些信息。 这信息是:文件名和文件修改日期。
到目前为止,我的解决方案已经被切出各拉链文件夹结构,然后通过临时文件夹与FSO对象中运行的临时文件夹。 然而,这已经被证明是非常缓慢的。
有没有办法来完成祖国这一点没有unziping的zip文件?
哎哟人。 我从来没有听说过的VBScript拉链的对象。 但它已经很长一段时间,因为我做的VBScript。 反正你能避免呢?
我做了一些谷歌上搜索你。 我没有发现这样的: http://www.example-code.com/vbscript/zip_List.asp奇尔卡特做了很多的东西,我认为是不可能的。 这给我的感觉 - 那是你正在试图做的是不会是无痛的。
如果给定的问题,你有我会找到比VBScript中不同的解决方案。 但是,如果你拉它关闭我会投票给你是VB土地市长
您可以在与壳牌对象的地方做。 但是,这将是一样缓慢,也许。 如果只是名称和日期Explorer可能会得到它从zip目录直接(在文件的末尾,以便将整个文件仍然需要阅读)。
一个文件夹中复制该项目到另一个文件夹。 一个zip文件是一个文件夹,所以它会在复制和拷贝出来。
拉上拉链
Set objShell = CreateObject("Shell.Application")
Set Ag=Wscript.Arguments
set WshShell = WScript.CreateObject("WScript.Shell")
Set SrcFldr=objShell.NameSpace(Ag(1))
Set DestFldr=objShell.NameSpace(Ag(0))
Set FldrItems=SrcFldr.Items
DestFldr.CopyHere FldrItems, &H214
Msgbox "Finished"
解压缩(注SrcFolder和DestFolder相反)
Set objShell = CreateObject("Shell.Application")
Set Ag=Wscript.Arguments
set WshShell = WScript.CreateObject("WScript.Shell")
Set DestFldr=objShell.NameSpace(Ag(1))
Set SrcFldr=objShell.NameSpace(Ag(0))
Set FldrItems=SrcFldr.Items
DestFldr.CopyHere FldrItems, &H214
Msgbox "Finished"
创建一个空白拉链。 (我应该使用ADODB二进制流,而不是FSO文本流,但它不应该的问题)
Set Ag=Wscript.Arguments
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.OpenTextFile(Ag(0), 8, vbtrue)
BlankZip = "PK" & Chr(5) & Chr(6)
For x = 0 to 17
BlankZip = BlankZip & Chr(0)
Next
ts.Write BlankZip