|
My Project
|
creating zip files More...
#include <ZipWriter.h>
Public Types | |
| enum | ZipResult { ZIP_OK = 0, ZIP_NOFILE = 0x00000200 } |
Public Types inherited from ParaEngine::IAttributeFields | |
| typedef ParaEngine::weak_ptr< IObject, IAttributeFields > | WeakPtr_type |
Public Types inherited from ParaEngine::IObject | |
| typedef ParaEngine::weak_ptr< IObject > | WeakPtr_type |
Public Member Functions | |
| ATTRIBUTE_DEFINE_CLASS (CZipWriter) | |
| ATTRIBUTE_SUPPORT_CREATE_FACTORY (CZipWriter) | |
| bool | IsValid () |
| whether the writer is valid. More... | |
| void | InitNewZip (const char *filename, const char *password=NULL) |
| create a new zip file | |
| DWORD | ZipAdd (const char *destFilename, const char *filename) |
| add a zip file to the zip. More... | |
| DWORD | ZipAdd (const char *destFilename, CParaFile *pFile) |
| DWORD | ZipAddFolder (const char *destFilename) |
| add a zip folder to the zip file. More... | |
| DWORD | AddDirectory (const char *dstzn, const char *filepattern, int nSubLevel=0) |
| add everything in side a directory to the zip. More... | |
| DWORD | close () |
| call this when you have finished adding files and folders to the zip file. More... | |
Public Member Functions inherited from ParaEngine::IAttributeFields | |
| virtual int | GetAttributeClassID () |
| attribute class ID should be identical, unless one knows how overriding rules work. More... | |
| virtual const char * | GetAttributeClassName () |
| a static string, describing the attribute class object's name | |
| virtual const char * | GetAttributeClassDescription () |
| a static string, describing the attribute class object | |
| virtual int | InstallFields (CAttributeClass *pClass, bool bOverride) |
| this class should be implemented if one wants to add new attribute. More... | |
| virtual int | GetChildAttributeColumnCount () |
| we support multi-dimensional child object. More... | |
| virtual int | GetChildAttributeObjectCount (int nColumnIndex=0) |
| get the number of child objects (row count) in the given column. More... | |
| virtual IAttributeFields * | GetChildAttributeObject (int nRowIndex, int nColumnIndex=0) |
| virtual IAttributeFields * | GetChildAttributeObject (const std::string &sName) |
| get attribute by child object. More... | |
| ATTRIBUTE_METHOD1 (IAttributeFields, GetName_s, const char **) | |
| ATTRIBUTE_METHOD1 (IAttributeFields, SetName_s, const char *) | |
| ATTRIBUTE_METHOD (IAttributeFields, PrintObject_s) | |
| ATTRIBUTE_METHOD (IAttributeFields, AddRef_s) | |
| ATTRIBUTE_METHOD1 (IAttributeFields, GetRefCount_s, int *) | |
| ATTRIBUTE_METHOD1 (IAttributeFields, SetTime_s, int) | |
| ATTRIBUTE_METHOD1 (IAttributeFields, GetTime_s, int *) | |
| ATTRIBUTE_METHOD (IAttributeFields, Release_s) | |
| virtual const std::string & | GetIdentifier () |
| virtual void | SetIdentifier (const std::string &sID) |
| virtual bool | IsModified () |
| whether some of the fields are modified.It is up to the implementation class to provide this functionality if necessary. More... | |
| virtual void | SetModified (bool bModified) |
| set whether any field has been modified. More... | |
| virtual bool | ValidateFields () |
| validate all fields and return true if validation passed. More... | |
| virtual string | GetValidationMessage () |
| get the recent validation message due to the most recent call to ValidateFields() | |
| virtual bool | ResetField (int nFieldID) |
| Reset the field to its initial or default value. More... | |
| virtual bool | InvokeEditor (int nFieldID, const std::string &sParameters) |
| Invoke an (external) editor for a given field. More... | |
| virtual bool | AddChildAttributeObject (IAttributeFields *pChild, int nRowIndex=-1, int nColumnIndex=0) |
| add child object. More... | |
| virtual void * | QueryObjectByName (const std::string &sObjectType) |
| convert to object of a given type. More... | |
| virtual void * | QueryObject (int nObjectType) |
| convert to object of a given type. More... | |
| virtual int | GetTime () |
| get the current local time in case it is animated in milli seconds frames. More... | |
| virtual void | SetTime (int nTime) |
| virtual CDynamicAttributeField * | GetDynamicField (const std::string &sName) |
| Get a dynamic field with a given name. More... | |
| virtual CDynamicAttributeField * | GetDynamicField (int nIndex) |
| Get a dynamic field with a given index. More... | |
| virtual const char * | GetDynamicFieldNameByIndex (int nIndex) |
| get field name by index | |
| virtual int | GetDynamicFieldCount () |
| how many dynamic field this object currently have. More... | |
| virtual int | SetDynamicField (const std::string &sName, const CVariable &value) |
| set a dynamic field with a given name. More... | |
| virtual int | AddDynamicField (const std::string &sName, ATTRIBUTE_FIELDTYPE dwType) |
| add dynamic field and return field index | |
| virtual void | RemoveAllDynamicFields () |
| remove all dynamic fields | |
| virtual int | SaveDynamicFieldsToString (std::string &output) |
| save only text dynamic fields to fieldname = value text strings. More... | |
| virtual int | LoadDynamicFieldsFromString (const std::string &input) |
| load only text dynamic fields from string More... | |
| CAttributeClass * | GetAttributeClass () |
| get the main attribute class object. More... | |
| void | PrintObject () |
| print the content of this object to a text file at temp/doc/[ClassName].txt. More... | |
Public Member Functions inherited from ParaEngine::IObject | |
| virtual void | Clone (IObject *obj) const |
| Clone the object's contains to a pointer. More... | |
| virtual IObject * | Clone () const |
| Clone the object's contains and return a pointer to the newly created object. More... | |
| virtual bool | Equals (const IObject *obj) const |
| Compare the object with another object. More... | |
| virtual const IType * | GetType () const |
| virtual std::string | ToString () const |
| WeakPtr_type & | GetWeakReference () |
| get weak reference object. More... | |
| virtual int | ProcessObjectEvent (const ObjectEvent &event) |
| this function is only used to backward compatibility of ParaObject:AddEvent() function. More... | |
Public Member Functions inherited from ParaEngine::CRefCounted | |
| void | addref () const |
| add reference count of the object. More... | |
| bool | delref () const |
| decrease reference count of the object. More... | |
| int | GetRefCount () const |
| get the reference count | |
| virtual int | Release () |
| CRefCounted * | AddToAutoReleasePool () |
| addref and releases the ownership sometime soon automatically (usually at the end of the current frame). More... | |
Static Public Member Functions | |
| static CZipWriter * | CreateZip (const char *filename, const char *password=NULL) |
| call this to start the creation of a zip file. More... | |
| static int | Compress (std::string &outstring, const char *src, int nSrcSize, int compressionlevel=-1) |
| compress without zip header | |
Static Public Member Functions inherited from ParaEngine::IAttributeFields | |
| static HRESULT | GetAttributeClassID_s (IAttributeFields *cls, int *p1) |
| static HRESULT | GetAttributeClassName_s (IAttributeFields *cls, const char **p1) |
| static bool | OpenWithDefaultEditor (const char *sFilename, bool bWaitOnReturn=false) |
| Open a given file with the default registered editor in the game engine. More... | |
Protected Member Functions | |
| int | SaveAndClose () |
| void | removeAllEntries () |
Protected Member Functions inherited from ParaEngine::IAttributeFields | |
| virtual CAttributeClass * | CreateAttributeClass () |
| initialize fields | |
| virtual CDynamicAttributesSet * | GetDynamicAttributes (bool bCreateIfNotExist=false) |
Protected Attributes | |
| std::vector< ZipArchiveEntry * > | m_entries |
| std::string | m_filename |
| std::string | m_password |
Protected Attributes inherited from ParaEngine::IObject | |
| WeakPtr_type | m_weak_reference |
Protected Attributes inherited from ParaEngine::CRefCounted | |
| int | m_refcount |
creating zip files
e.g. (1) Traditional use, creating a zipfile from existing files CZipWriter* writer = CZipWriter::CreateZip("c:\\simple1.zip",""); writer->ZipAdd("znsimple.bmp", "c:\\simple.bmp"); writer->ZipAdd("znsimple.txt", "c:\\simple.txt"); writer->close();
| DWORD CZipWriter::AddDirectory | ( | const char * | dstzn, |
| const char * | filepattern, | ||
| int | nSubLevel = 0 |
||
| ) |
add everything in side a directory to the zip.
e.g. AddDirectory("myworld/", "worlds/myworld/ *.*", 10);
| dstzn | all files in fn will be appended with this string to be saved in the zip file. |
| filepattern | file patterns, which can include wild characters in the file portion. |
| nSubLevel | sub directory levels. 0 means only files at parent directory. |
| DWORD CZipWriter::close | ( | ) |
call this when you have finished adding files and folders to the zip file.
Note: you can't add any more after calling this.
|
static |
call this to start the creation of a zip file.
one need to call Release() or use ref_ptr<CZipWriter>
| bool CZipWriter::IsValid | ( | ) |
whether the writer is valid.
| DWORD CZipWriter::ZipAdd | ( | const char * | destFilename, |
| const char * | filename | ||
| ) |
add a zip file to the zip.
file call this for each file to be added to the zip. It does not check for duplicates
| destFilename | destination filename as appeared in the zip file |
| filename | the local disk file name to add to the zip file. |
| DWORD CZipWriter::ZipAddFolder | ( | const char * | destFilename | ) |
add a zip folder to the zip file.
call this for each folder to be added to the zip. It does not check for duplicates
| destFilename | destination filename as appeared in the zip file |
1.8.12