ASP Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

ASP Examples

ASP String
ASP Byte Array
Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
Email
FTP
HTML-to-XML
HTTP
IMAP
Encryption
MHT / HTML Email
POP3
RSA
S/MIME
SMTP
Socket
Spider
SSH
SSH Tunnel
SSH Key
SFTP
Tar
ASP Upload
XML
XMP
Zip Compression

More Examples...
Email Object
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Icon

 

 

 

 

 

 

Controlling filepaths within a Zip

How to control the filepaths stored within a .zip.

Download Chilkat Zip ActiveX

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
set zip = Server.CreateObject("Chilkat.Zip2")

'  Any string unlocks the component for the 1st 30-days.
success = zip.UnlockComponent("Anything for 30-day trial")
If (success <> 1) Then
    Response.Write zip.LastErrorText & "<br>"

End If

'  This is the directory structure on the local filesystem
'  from which we'll create .zip archives:
'  The root directory is c:\temp\filesToZip
' 
'  We have these files:
'  c:\temp\filesToZip\faxCover.doc
'  c:\temp\filesToZip\exe\Setup.exe
'  c:\temp\filesToZip\images\cheese.jpg
'  c:\temp\filesToZip\images\dude.gif
'  c:\temp\filesToZip\images\img3.gif
'  c:\temp\filesToZip\images\img4.gif
'  c:\temp\filesToZip\images\img5.gif
'  c:\temp\filesToZip\images\scream.jpg
'  c:\temp\filesToZip\images\imageInfo\scream.xml
'  c:\temp\filesToZip\images\imageInfo\cheese.xml
'  c:\temp\filesToZip\text\html\bonaireFishing.html
'  c:\temp\filesToZip\text\html\upload.html
'  c:\temp\filesToZip\text\txt\hello.txt
'  c:\temp\filesToZip\text\txt\HelloWorld123.txt
'  c:\temp\filesToZip\text\xml\hamlet.xml
'  c:\temp\filesToZip\text\xml\pigs.xml

'  There are three properties to help control the paths stored
'  within a .zip:
'  AppendFromDir
'  PathPrefix
'  DiscardPaths
' 

'  First we'll demonstrate AppendFromDir
'  When a directory tree is appended via AppendFiles or
'  AppendFilesEx, the AppendFromDir sets the base of the
'  directory tree appended (if the file pattern contains a
'  relative path, or no path at all).

'  Clear the zip object.
zip.NewZip "test1.zip"

recurse = 1

zip.AppendFromDir = "c:/temp/filesToZip"
zip.AppendFiles "*.xml",recurse

'  The zip will contain:
'  images\imageInfo\scream.xml
'  images\imageInfo\cheese.xml
'  text\xml\hamlet.xml
'  text\xml\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    Response.Write zip.LastErrorText & "<br>"

End If

'  Clear the zip object.
zip.NewZip "test2.zip"

zip.AppendFromDir = "c:/temp/filesToZip/images"
zip.AppendFiles "*.xml",recurse
zip.AppendFromDir = "c:/temp/filesToZip/text"
zip.AppendFiles "*.xml",recurse

'  The zip will contain:
'  imageInfo\scream.xml
'  imageInfo\cheese.xml
'  xml\hamlet.xml
'  xml\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    Response.Write zip.LastErrorText & "<br>"

End If

'  The PathPrefix property adds an arbitrary path prefix to each
'  file in the .zip.
'  For example:

'  Clear the zip object.
zip.NewZip "test3.zip"

zip.PathPrefix = "chilkat/"

zip.AppendFromDir = "c:/temp/filesToZip/images"
zip.AppendFiles "*.xml",recurse
zip.AppendFromDir = "c:/temp/filesToZip/text"
zip.AppendFiles "*.xml",recurse

'  The zip will contain:
'  chilkat\imageInfo\scream.xml
'  chilkat\imageInfo\cheese.xml
'  chilkat\xml\hamlet.xml
'  chilkat\xml\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    Response.Write zip.LastErrorText & "<br>"

End If

'  The DiscardPaths property removes the path from each file
'  in the zip:
'  For example:

'  Clear the zip object.
zip.NewZip "test4.zip"

zip.PathPrefix = ""
zip.DiscardPaths = 1

zip.AppendFromDir = "c:/temp/filesToZip/"
zip.AppendFiles "*",recurse

'  The zip will contain:
'  faxCover.doc
'  Setup.exe
'  cheese.jpg
'  dude.gif
'  img3.gif
'  img4.gif
'  img5.gif
'  scream.jpg
'  scream.xml
'  cheese.xml
'  bonaireFishing.html
'  upload.html
'  hello.txt
'  HelloWorld123.txt
'  hamlet.xml
'  pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    Response.Write zip.LastErrorText & "<br>"

End If

'  You can combine PathPrefix with DiscardPaths:

'  Clear the zip object.
zip.NewZip "test5.zip"

zip.PathPrefix = "chilkat/"
zip.DiscardPaths = 1

zip.AppendFromDir = "c:/temp/filesToZip/"
zip.AppendFiles "*",recurse

'  The zip will contain:
'  chilkat\faxCover.doc
'  chilkat\Setup.exe
'  chilkat\cheese.jpg
'  chilkat\dude.gif
'  chilkat\img3.gif
'  chilkat\img4.gif
'  chilkat\img5.gif
'  chilkat\scream.jpg
'  chilkat\scream.xml
'  chilkat\cheese.xml
'  chilkat\bonaireFishing.html
'  chilkat\upload.html
'  chilkat\hello.txt
'  chilkat\HelloWorld123.txt
'  chilkat\hamlet.xml
'  chilkat\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    Response.Write zip.LastErrorText & "<br>"

End If

'  One last example -- combine DiscardPaths with PathPrefix
'  with multiple calls to AppendFiles:

'  Clear the zip object.
zip.NewZip "test6.zip"

zip.DiscardPaths = 1
zip.AppendFromDir = "c:/temp/filesToZip/"

'  Get all .gif files:
zip.PathPrefix = "gif/"
zip.AppendFiles "*.gif",recurse

'  Get all .jpg files:
zip.PathPrefix = "jpg/"
zip.AppendFiles "*.jpg",recurse

'  Get all .xml files:
zip.PathPrefix = "xml/"
zip.AppendFiles "*.xml",recurse

'  The zip will contain:
'  jpg\cheese.jpg
'  gif\dude.gif
'  gif\img3.gif
'  gif\img4.gif
'  gif\img5.gif
'  jpg\scream.jpg
'  xml\scream.xml
'  xml\cheese.xml
'  xml\hamlet.xml
'  xml\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    Response.Write zip.LastErrorText & "<br>"

End If

%>
</body>
</html>

 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2008 Chilkat Software, Inc. All Rights Reserved.