Cocos2d-x  v3.10
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups
FileUtils Class Referenceabstract

Helper class to handle file operations. More...

Public Member Functions

virtual ~FileUtils ()
 The destructor of FileUtils.
 
virtual void purgeCachedEntries ()
 Purges full path caches.
 
local purgeCachedEntries ()
 Purges full path caches.
 
virtual std::string getStringFromFile (const std::string &filename)
 Gets string from a file.
 
var getStringFromFile ( var filename)
 Gets string from a file.
 
local getStringFromFile ( local filename)
 Gets string from a file.
 
virtual Data getDataFromFile (const std::string &filename)
 Creates binary data from a file. More...
 
var getDataFromFile ( var filename)
 Creates binary data from a file. More...
 
local getDataFromFile ( local filename)
 Creates binary data from a file. More...
 
virtual unsigned char * getFileData (const std::string &filename, const char *mode, ssize_t *size)
 Gets resource file data The resource file name which contains the path. More...
 
var getFileData ( var filename, var mode, var size)
 Gets resource file data The resource file name which contains the path. More...
 
local getFileData ( local filename, local mode, local size)
 Gets resource file data The resource file name which contains the path. More...
 
virtual unsigned char * getFileDataFromZip (const std::string &zipFilePath, const std::string &filename, ssize_t *size)
 Gets resource file data from a zip file. More...
 
var getFileDataFromZip ( var zipFilePath, var filename, var size)
 Gets resource file data from a zip file. More...
 
local getFileDataFromZip ( local zipFilePath, local filename, local size)
 Gets resource file data from a zip file. More...
 
virtual std::string fullPathForFilename (const std::string &filename) const
 Returns the fullpath for a given filename. More...
 
virtual void loadFilenameLookupDictionaryFromFile (const std::string &filename)
 Loads the filenameLookup dictionary from the contents of a filename. More...
 
virtual void setFilenameLookupDictionary (const ValueMap &filenameLookupDict)
 Sets the filenameLookup dictionary. More...
 
virtual std::string fullPathFromRelativeFile (const std::string &filename, const std::string &relativeFile)
 Gets full path from a file name and the path of the relative file. More...
 
virtual void setSearchResolutionsOrder (const std::vector< std::string > &searchResolutionsOrder)
 Sets the array that contains the search order of the resources. More...
 
virtual void addSearchResolutionsOrder (const std::string &order, const bool front=false)
 Append search order of the resources.
 
virtual const std::vector
< std::string > & 
getSearchResolutionsOrder () const
 Gets the array that contains the search order of the resources.
 
virtual void setSearchPaths (const std::vector< std::string > &searchPaths)
 Sets the array of search paths. More...
 
void setDefaultResourceRootPath (const std::string &path)
 Set default resource root path.
 
var setDefaultResourceRootPath ( var path)
 Set default resource root path.
 
local setDefaultResourceRootPath ( local path)
 Set default resource root path.
 
void addSearchPath (const std::string &path, const bool front=false)
 Add search path.
 
var addSearchPath ( var path, var false)
 Add search path.
 
local addSearchPath ( local path, local false)
 Add search path.
 
virtual const std::vector
< std::string > & 
getSearchPaths () const
 Gets the array of search paths. More...
 
virtual std::string getWritablePath () const =0
 Gets the writable path. More...
 
virtual void setWritablePath (const std::string &writablePath)
 Sets writable path.
 
virtual void setPopupNotify (bool notify)
 Sets whether to pop-up a message box when failed to load an image.
 
local setPopupNotify ( local notify)
 Sets whether to pop-up a message box when failed to load an image.
 
virtual bool isPopupNotify () const
 Checks whether to pop up a message box when failed to load an image. More...
 
var isPopupNotify ()
 Checks whether to pop up a message box when failed to load an image. More...
 
local isPopupNotify ()
 Checks whether to pop up a message box when failed to load an image. More...
 
virtual ValueMap getValueMapFromFile (const std::string &filename)
 Converts the contents of a file to a ValueMap. More...
 
var getValueMapFromFile ( var filename)
 Converts the contents of a file to a ValueMap. More...
 
local getValueMapFromFile ( local filename)
 Converts the contents of a file to a ValueMap. More...
 
virtual ValueMap getValueMapFromData (const char *filedata, int filesize)
 Converts the contents of a file to a ValueMap. More...
 
local getValueMapFromData ( local filedata, local filesize)
 Converts the contents of a file to a ValueMap. More...
 
virtual bool writeToFile (ValueMap &dict, const std::string &fullPath)
 Write a ValueMap to a plist file. More...
 
var writeToFile ( var dict, var fullPath)
 Write a ValueMap to a plist file. More...
 
local writeToFile ( local dict, local fullPath)
 Write a ValueMap to a plist file. More...
 
virtual bool writeStringToFile (std::string dataStr, const std::string &fullPath)
 write a string into a file More...
 
local writeStringToFile ( local dataStr, local fullPath)
 write a string into a file More...
 
virtual bool writeDataToFile (Data retData, const std::string &fullPath)
 write Data into a file More...
 
local writeDataToFile ( local retData, local fullPath)
 write Data into a file More...
 
virtual bool writeValueMapToFile (ValueMap &dict, const std::string &fullPath)
 write ValueMap into a plist file More...
 
local writeValueMapToFile ( local dict, local fullPath)
 write ValueMap into a plist file More...
 
virtual bool writeValueVectorToFile (ValueVector vecData, const std::string &fullPath)
 write ValueVector into a plist file More...
 
local writeValueVectorToFile ( local vecData, local fullPath)
 write ValueVector into a plist file More...
 
virtual std::string getSuitableFOpen (const std::string &filenameUtf8) const
 Windows fopen can't support UTF-8 filename Need convert all parameters fopen and other 3rd-party libs. More...
 
virtual ValueVector getValueVectorFromFile (const std::string &filename)
 Converts the contents of a file to a ValueVector. More...
 
var getValueVectorFromFile ( var filename)
 Converts the contents of a file to a ValueVector. More...
 
local getValueVectorFromFile ( local filename)
 Converts the contents of a file to a ValueVector. More...
 
virtual bool isFileExist (const std::string &filename) const
 Checks whether a file exists. More...
 
virtual std::string getFileExtension (const std::string &filePath) const
 Gets filename extension is a suffix (separated from the base filename by a dot) in lower case. More...
 
var getFileExtension ( var filePath)
 Gets filename extension is a suffix (separated from the base filename by a dot) in lower case. More...
 
local getFileExtension ( local filePath)
 Gets filename extension is a suffix (separated from the base filename by a dot) in lower case. More...
 
virtual bool isAbsolutePath (const std::string &path) const
 Checks whether the path is an absolute path. More...
 
virtual bool isDirectoryExist (const std::string &dirPath) const
 Checks whether the path is a directory. More...
 
local isDirectoryExist ( local dirPath)
 Checks whether the path is a directory. More...
 
virtual bool createDirectory (const std::string &dirPath)
 Creates a directory. More...
 
virtual bool removeDirectory (const std::string &dirPath)
 Removes a directory. More...
 
var removeDirectory ( var dirPath)
 Removes a directory. More...
 
local removeDirectory ( local dirPath)
 Removes a directory. More...
 
virtual bool removeFile (const std::string &filepath)
 Removes a file. More...
 
var removeFile ( var filepath)
 Removes a file. More...
 
local removeFile ( local filepath)
 Removes a file. More...
 
virtual bool renameFile (const std::string &path, const std::string &oldname, const std::string &name)
 Renames a file under the given directory. More...
 
local renameFile ( local path, local oldname, local name)
 Renames a file under the given directory. More...
 
virtual bool renameFile (const std::string &oldfullpath, const std::string &newfullpath)
 Renames a file under the given directory. More...
 
virtual long getFileSize (const std::string &filepath)
 Retrieve the file size. More...
 
local getFileSize ( local filepath)
 Retrieve the file size. More...
 
const std::unordered_map
< std::string, std::string > & 
getFullPathCache () const
 Returns the full path cache.
 

Static Public Member Functions

static FileUtilsgetInstance ()
 Gets the instance of FileUtils.
 
var getInstance ()
 Gets the instance of FileUtils.
 
local getInstance ()
 Gets the instance of FileUtils.
 
static void destroyInstance ()
 Destroys the instance of FileUtils.
 
static void setDelegate (FileUtils *delegate)
 You can inherit from platform dependent implementation of FileUtils, such as FileUtilsAndroid, and use this function to set delegate, then FileUtils will invoke delegate's implementation. More...
 
static FileUtilssharedFileUtils ()
local sharedFileUtils ()
static void purgeFileUtils ()
local purgeFileUtils ()

Detailed Description

Helper class to handle file operations.

Member Function Documentation

static void setDelegate ( FileUtils delegate)
static

You can inherit from platform dependent implementation of FileUtils, such as FileUtilsAndroid, and use this function to set delegate, then FileUtils will invoke delegate's implementation.

For example, your resources are encrypted, so you need to decrypt it after reading data from resources, then you can implement all getXXX functions, and engine will invoke your own getXX functions when reading data of resources.

If you don't want to system default implementation after setting delegate, you can just pass nullptr to this function.

It will delete previous delegate

var setDelegate ( var  delegate)
static

You can inherit from platform dependent implementation of FileUtils, such as FileUtilsAndroid, and use this function to set delegate, then FileUtils will invoke delegate's implementation.

For example, your resources are encrypted, so you need to decrypt it after reading data from resources, then you can implement all getXXX functions, and engine will invoke your own getXX functions when reading data of resources.

If you don't want to system default implementation after setting delegate, you can just pass nullptr to this function.

It will delete previous delegate

static FileUtils* sharedFileUtils ( )
inlinestatic
var sharedFileUtils ( )
inlinestatic
local sharedFileUtils ( )
inlinestatic
static void purgeFileUtils ( )
inlinestatic
var purgeFileUtils ( )
inlinestatic
local purgeFileUtils ( )
inlinestatic
virtual Data getDataFromFile ( const std::string &  filename)
virtual

Creates binary data from a file.

A data object.

var getDataFromFile ( var  filename)
virtual

Creates binary data from a file.

A data object.

local getDataFromFile ( local  filename)
virtual

Creates binary data from a file.

A data object.

virtual unsigned char* getFileData ( const std::string &  filename,
const char *  mode,
ssize_t *  size 
)
virtual

Gets resource file data The resource file name which contains the path.

The read mode of the file. property like fopen function mode If the file read succeeds, it will be the data size, otherwise 0. Upon success, a pointer to the data is returned, otherwise NULL. Recall: you are responsible for calling free() on any Non-NULL pointer returned.

var getFileData ( var  filename,
var  mode,
var  size 
)
virtual

Gets resource file data The resource file name which contains the path.

The read mode of the file. property like fopen function mode If the file read succeeds, it will be the data size, otherwise 0. Upon success, a pointer to the data is returned, otherwise NULL. Recall: you are responsible for calling free() on any Non-NULL pointer returned.

local getFileData ( local  filename,
local  mode,
local  size 
)
virtual

Gets resource file data The resource file name which contains the path.

The read mode of the file. property like fopen function mode If the file read succeeds, it will be the data size, otherwise 0. Upon success, a pointer to the data is returned, otherwise NULL. Recall: you are responsible for calling free() on any Non-NULL pointer returned.

virtual unsigned char*
getFileDataFromZip
( const std::string &  zipFilePath,
const std::string &  filename,
ssize_t *  size 
)
virtual

Gets resource file data from a zip file.

The resource zip file path. The resource file path and name relative to the zip file. If the file read operation succeeds, it will be the data size, otherwise 0. Upon success, a pointer to the data is returned, otherwise nullptr. Recall: you are responsible for calling free() on any Non-nullptr pointer returned.

var getFileDataFromZip ( var  zipFilePath,
var  filename,
var  size 
)
virtual

Gets resource file data from a zip file.

The resource zip file path. The resource file path and name relative to the zip file. If the file read operation succeeds, it will be the data size, otherwise 0. Upon success, a pointer to the data is returned, otherwise nullptr. Recall: you are responsible for calling free() on any Non-nullptr pointer returned.

local getFileDataFromZip ( local  zipFilePath,
local  filename,
local  size 
)
virtual

Gets resource file data from a zip file.

The resource zip file path. The resource file path and name relative to the zip file. If the file read operation succeeds, it will be the data size, otherwise 0. Upon success, a pointer to the data is returned, otherwise nullptr. Recall: you are responsible for calling free() on any Non-nullptr pointer returned.

virtual std::string
fullPathForFilename
( const std::string &  filename) const
virtual

Returns the fullpath for a given filename.

First it will try to get a new filename from the "filenameLookup" dictionary. If a new filename can't be found on the dictionary, it will use the original filename. Then it will try to obtain the full path of the filename using the FileUtils search rules: resolutions, and search paths. The file search is based on the array element order of search paths and resolution directories.

For instance:

We set two elements("/mnt/sdcard/", "internal_dir/") to search paths vector by setSearchPaths,
and set three elements("resources-ipadhd/", "resources-ipad/", "resources-iphonehd")
to resolutions vector by setSearchResolutionsOrder. The "internal_dir" is relative to "Resources/".

If we have a file named 'sprite.png', the mapping in fileLookup dictionary contains key: sprite.png -> value: sprite.pvr.gz. Firstly, it will replace 'sprite.png' with 'sprite.pvr.gz', then searching the file sprite.pvr.gz as follows:

/mnt/sdcard/resources-ipadhd/sprite.pvr.gz      (if not found, search next)
/mnt/sdcard/resources-ipad/sprite.pvr.gz        (if not found, search next)
/mnt/sdcard/resources-iphonehd/sprite.pvr.gz    (if not found, search next)
/mnt/sdcard/sprite.pvr.gz                       (if not found, search next)
internal_dir/resources-ipadhd/sprite.pvr.gz     (if not found, search next)
internal_dir/resources-ipad/sprite.pvr.gz       (if not found, search next)
internal_dir/resources-iphonehd/sprite.pvr.gz   (if not found, search next)
internal_dir/sprite.pvr.gz                      (if not found, return "sprite.png")

If the filename contains relative path like "gamescene/uilayer/sprite.png", and the mapping in fileLookup dictionary contains key: gamescene/uilayer/sprite.png -> value: gamescene/uilayer/sprite.pvr.gz. The file search order will be:

 /mnt/sdcard/gamescene/uilayer/resources-ipadhd/sprite.pvr.gz      (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/resources-ipad/sprite.pvr.gz        (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/resources-iphonehd/sprite.pvr.gz    (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/sprite.pvr.gz                       (if not found, search next)
 internal_dir/gamescene/uilayer/resources-ipadhd/sprite.pvr.gz     (if not found, search next)
 internal_dir/gamescene/uilayer/resources-ipad/sprite.pvr.gz       (if not found, search next)
 internal_dir/gamescene/uilayer/resources-iphonehd/sprite.pvr.gz   (if not found, search next)
 internal_dir/gamescene/uilayer/sprite.pvr.gz                      (if not found, return "gamescene/uilayer/sprite.png")

If the new file can't be found on the file system, it will return the parameter filename directly.

This method was added to simplify multiplatform support. Whether you are using cocos2d-js or any cross-compilation toolchain like StellaSDK or Apportable, you might need to load different resources for a given file in the different platforms.

var fullPathForFilename ( var  filename)
virtual

Returns the fullpath for a given filename.

First it will try to get a new filename from the "filenameLookup" dictionary. If a new filename can't be found on the dictionary, it will use the original filename. Then it will try to obtain the full path of the filename using the FileUtils search rules: resolutions, and search paths. The file search is based on the array element order of search paths and resolution directories.

For instance:

We set two elements("/mnt/sdcard/", "internal_dir/") to search paths vector by setSearchPaths,
and set three elements("resources-ipadhd/", "resources-ipad/", "resources-iphonehd")
to resolutions vector by setSearchResolutionsOrder. The "internal_dir" is relative to "Resources/".

If we have a file named 'sprite.png', the mapping in fileLookup dictionary contains key: sprite.png -> value: sprite.pvr.gz. Firstly, it will replace 'sprite.png' with 'sprite.pvr.gz', then searching the file sprite.pvr.gz as follows:

/mnt/sdcard/resources-ipadhd/sprite.pvr.gz      (if not found, search next)
/mnt/sdcard/resources-ipad/sprite.pvr.gz        (if not found, search next)
/mnt/sdcard/resources-iphonehd/sprite.pvr.gz    (if not found, search next)
/mnt/sdcard/sprite.pvr.gz                       (if not found, search next)
internal_dir/resources-ipadhd/sprite.pvr.gz     (if not found, search next)
internal_dir/resources-ipad/sprite.pvr.gz       (if not found, search next)
internal_dir/resources-iphonehd/sprite.pvr.gz   (if not found, search next)
internal_dir/sprite.pvr.gz                      (if not found, return "sprite.png")

If the filename contains relative path like "gamescene/uilayer/sprite.png", and the mapping in fileLookup dictionary contains key: gamescene/uilayer/sprite.png -> value: gamescene/uilayer/sprite.pvr.gz. The file search order will be:

 /mnt/sdcard/gamescene/uilayer/resources-ipadhd/sprite.pvr.gz      (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/resources-ipad/sprite.pvr.gz        (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/resources-iphonehd/sprite.pvr.gz    (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/sprite.pvr.gz                       (if not found, search next)
 internal_dir/gamescene/uilayer/resources-ipadhd/sprite.pvr.gz     (if not found, search next)
 internal_dir/gamescene/uilayer/resources-ipad/sprite.pvr.gz       (if not found, search next)
 internal_dir/gamescene/uilayer/resources-iphonehd/sprite.pvr.gz   (if not found, search next)
 internal_dir/gamescene/uilayer/sprite.pvr.gz                      (if not found, return "gamescene/uilayer/sprite.png")

If the new file can't be found on the file system, it will return the parameter filename directly.

This method was added to simplify multiplatform support. Whether you are using cocos2d-js or any cross-compilation toolchain like StellaSDK or Apportable, you might need to load different resources for a given file in the different platforms.

local fullPathForFilename ( local  filename)
virtual

Returns the fullpath for a given filename.

First it will try to get a new filename from the "filenameLookup" dictionary. If a new filename can't be found on the dictionary, it will use the original filename. Then it will try to obtain the full path of the filename using the FileUtils search rules: resolutions, and search paths. The file search is based on the array element order of search paths and resolution directories.

For instance:

We set two elements("/mnt/sdcard/", "internal_dir/") to search paths vector by setSearchPaths,
and set three elements("resources-ipadhd/", "resources-ipad/", "resources-iphonehd")
to resolutions vector by setSearchResolutionsOrder. The "internal_dir" is relative to "Resources/".

If we have a file named 'sprite.png', the mapping in fileLookup dictionary contains key: sprite.png -> value: sprite.pvr.gz. Firstly, it will replace 'sprite.png' with 'sprite.pvr.gz', then searching the file sprite.pvr.gz as follows:

/mnt/sdcard/resources-ipadhd/sprite.pvr.gz      (if not found, search next)
/mnt/sdcard/resources-ipad/sprite.pvr.gz        (if not found, search next)
/mnt/sdcard/resources-iphonehd/sprite.pvr.gz    (if not found, search next)
/mnt/sdcard/sprite.pvr.gz                       (if not found, search next)
internal_dir/resources-ipadhd/sprite.pvr.gz     (if not found, search next)
internal_dir/resources-ipad/sprite.pvr.gz       (if not found, search next)
internal_dir/resources-iphonehd/sprite.pvr.gz   (if not found, search next)
internal_dir/sprite.pvr.gz                      (if not found, return "sprite.png")

If the filename contains relative path like "gamescene/uilayer/sprite.png", and the mapping in fileLookup dictionary contains key: gamescene/uilayer/sprite.png -> value: gamescene/uilayer/sprite.pvr.gz. The file search order will be:

 /mnt/sdcard/gamescene/uilayer/resources-ipadhd/sprite.pvr.gz      (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/resources-ipad/sprite.pvr.gz        (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/resources-iphonehd/sprite.pvr.gz    (if not found, search next)
 /mnt/sdcard/gamescene/uilayer/sprite.pvr.gz                       (if not found, search next)
 internal_dir/gamescene/uilayer/resources-ipadhd/sprite.pvr.gz     (if not found, search next)
 internal_dir/gamescene/uilayer/resources-ipad/sprite.pvr.gz       (if not found, search next)
 internal_dir/gamescene/uilayer/resources-iphonehd/sprite.pvr.gz   (if not found, search next)
 internal_dir/gamescene/uilayer/sprite.pvr.gz                      (if not found, return "gamescene/uilayer/sprite.png")

If the new file can't be found on the file system, it will return the parameter filename directly.

This method was added to simplify multiplatform support. Whether you are using cocos2d-js or any cross-compilation toolchain like StellaSDK or Apportable, you might need to load different resources for a given file in the different platforms.

virtual void
loadFilenameLookupDictionaryFromFile
( const std::string &  filename)
virtual

Loads the filenameLookup dictionary from the contents of a filename.

The plist file name should follow the format below:

The plist file name.

var loadFilenameLookup ( var  filename)
virtual

Loads the filenameLookup dictionary from the contents of a filename.

The plist file name should follow the format below:

The plist file name.

local loadFilenameLookup ( local  filename)
virtual

Loads the filenameLookup dictionary from the contents of a filename.

The plist file name should follow the format below:

The plist file name.

virtual void
setFilenameLookupDictionary
( const ValueMap &  filenameLookupDict)
virtual

Sets the filenameLookup dictionary.

The dictionary for replacing filename.

var setFilenameLookupDictionary ( var  filenameLookupDict)
virtual

Sets the filenameLookup dictionary.

The dictionary for replacing filename.

local setFilenameLookupDictionary ( local  filenameLookupDict)
virtual

Sets the filenameLookup dictionary.

The dictionary for replacing filename.

virtual std::string
fullPathFromRelativeFile
( const std::string &  filename,
const std::string &  relativeFile 
)
virtual

Gets full path from a file name and the path of the relative file.

The file name. The path of the relative file. The full path. e.g. filename: hello.png, pszRelativeFile: /User/path1/path2/hello.plist Return: /User/path1/path2/hello.pvr (If there a a key(hello.png)-value(hello.pvr) in FilenameLookup dictionary. )

var fullPathFromRelativeFile ( var  filename,
var  relativeFile 
)
virtual

Gets full path from a file name and the path of the relative file.

The file name. The path of the relative file. The full path. e.g. filename: hello.png, pszRelativeFile: /User/path1/path2/hello.plist Return: /User/path1/path2/hello.pvr (If there a a key(hello.png)-value(hello.pvr) in FilenameLookup dictionary. )

local fullPathFromRelativeFile ( local  filename,
local  relativeFile 
)
virtual

Gets full path from a file name and the path of the relative file.

The file name. The path of the relative file. The full path. e.g. filename: hello.png, pszRelativeFile: /User/path1/path2/hello.plist Return: /User/path1/path2/hello.pvr (If there a a key(hello.png)-value(hello.pvr) in FilenameLookup dictionary. )

virtual void
setSearchResolutionsOrder
( const std::vector< std::string > &  searchResolutionsOrder)
virtual

Sets the array that contains the search order of the resources.

The source array that contains the search order of the resources.

In js:var setSearchResolutionsOrder(var jsval)

var setSearchResolutionsOrder ( var  searchResolutionsOrder)
virtual

Sets the array that contains the search order of the resources.

The source array that contains the search order of the resources.

In js:var setSearchResolutionsOrder(var jsval)

virtual void setSearchPaths ( const std::vector< std::string > &  searchPaths)
virtual

Sets the array of search paths.

You can use this array to modify the search path of the resources. If you want to use "themes" or search resources in the "cache", you can do it easily by adding new entries in this array.

This method could access relative path and absolute path. If the relative path was passed to the vector, FileUtils will add the default resource directory before the relative path. For instance: On Android, the default resource root path is "assets/". If "/mnt/sdcard/" and "resources-large" were set to the search paths vector, "resources-large" will be converted to "assets/resources-large" since it was a relative path.

The array contains search paths.

In js:var setSearchPaths(var jsval);

var setSearchPaths ( var  searchPaths)
virtual

Sets the array of search paths.

You can use this array to modify the search path of the resources. If you want to use "themes" or search resources in the "cache", you can do it easily by adding new entries in this array.

This method could access relative path and absolute path. If the relative path was passed to the vector, FileUtils will add the default resource directory before the relative path. For instance: On Android, the default resource root path is "assets/". If "/mnt/sdcard/" and "resources-large" were set to the search paths vector, "resources-large" will be converted to "assets/resources-large" since it was a relative path.

The array contains search paths.

In js:var setSearchPaths(var jsval);

virtual const std::vector
<std::string>& getSearchPaths
( ) const
virtual

Gets the array of search paths.

The array of search paths.

var getSearchPaths ( )
virtual

Gets the array of search paths.

The array of search paths.

virtual std::string getWritablePath ( ) const
pure virtual

Gets the writable path.

The path that can be write/read a file in

var getWritablePath ( )
pure virtual

Gets the writable path.

The path that can be write/read a file in

local getWritablePath ( )
pure virtual

Gets the writable path.

The path that can be write/read a file in

virtual bool isPopupNotify ( ) const
virtual

Checks whether to pop up a message box when failed to load an image.

True if pop up a message box when failed to load an image, false if not.

var isPopupNotify ( )
virtual

Checks whether to pop up a message box when failed to load an image.

True if pop up a message box when failed to load an image, false if not.

local isPopupNotify ( )
virtual

Checks whether to pop up a message box when failed to load an image.

True if pop up a message box when failed to load an image, false if not.

virtual ValueMap
getValueMapFromFile
( const std::string &  filename)
virtual

Converts the contents of a file to a ValueMap.

The filename of the file to gets content. ValueMap of the file contents. This method is used internally.

var getValueMapFromFile ( var  filename)
virtual

Converts the contents of a file to a ValueMap.

The filename of the file to gets content. ValueMap of the file contents. This method is used internally.

local getValueMapFromFile ( local  filename)
virtual

Converts the contents of a file to a ValueMap.

The filename of the file to gets content. ValueMap of the file contents. This method is used internally.

virtual ValueMap
getValueMapFromData
( const char *  filedata,
int  filesize 
)
virtual

Converts the contents of a file to a ValueMap.

This method is used internally.

var getValueMapFromData ( var  filedata,
var  filesize 
)
virtual

Converts the contents of a file to a ValueMap.

This method is used internally.

local getValueMapFromData ( local  filedata,
local  filesize 
)
virtual

Converts the contents of a file to a ValueMap.

This method is used internally.

virtual bool writeToFile ( ValueMap &  dict,
const std::string &  fullPath 
)
virtual

Write a ValueMap to a plist file.

the data which want to write into file file fullpath This method is used internally.

var writeToFile ( var  dict,
var  fullPath 
)
virtual

Write a ValueMap to a plist file.

the data which want to write into file file fullpath This method is used internally.

local writeToFile ( local  dict,
local  fullPath 
)
virtual

Write a ValueMap to a plist file.

the data which want to write into file file fullpath This method is used internally.

virtual bool writeStringToFile ( std::string  dataStr,
const std::string &  fullPath 
)
virtual

write a string into a file

Parameters
dataStrthe string want to save
fullPathThe full path to the file you want to save a string
Returns
bool True if write success
var writeStringToFile ( var  dataStr,
var  fullPath 
)
virtual

write a string into a file

Parameters
dataStrthe string want to save
fullPathThe full path to the file you want to save a string
Returns
bool True if write success
local writeStringToFile ( local  dataStr,
local  fullPath 
)
virtual

write a string into a file

Parameters
dataStrthe string want to save
fullPathThe full path to the file you want to save a string
Returns
bool True if write success
virtual bool writeDataToFile ( Data  retData,
const std::string &  fullPath 
)
virtual

write Data into a file

Parameters
retDatathe data want to save
fullPathThe full path to the file you want to save a string
Returns
bool
var writeDataToFile ( var  retData,
var  fullPath 
)
virtual

write Data into a file

Parameters
retDatathe data want to save
fullPathThe full path to the file you want to save a string
Returns
bool
local writeDataToFile ( local  retData,
local  fullPath 
)
virtual

write Data into a file

Parameters
retDatathe data want to save
fullPathThe full path to the file you want to save a string
Returns
bool
virtual bool writeValueMapToFile ( ValueMap &  dict,
const std::string &  fullPath 
)
virtual

write ValueMap into a plist file

Parameters
dictthe ValueMap want to save
fullPathThe full path to the file you want to save a string
Returns
bool
var writeValueMapToFile ( var  dict,
var  fullPath 
)
virtual

write ValueMap into a plist file

Parameters
dictthe ValueMap want to save
fullPathThe full path to the file you want to save a string
Returns
bool
local writeValueMapToFile ( local  dict,
local  fullPath 
)
virtual

write ValueMap into a plist file

Parameters
dictthe ValueMap want to save
fullPathThe full path to the file you want to save a string
Returns
bool
virtual bool writeValueVectorToFile ( ValueVector  vecData,
const std::string &  fullPath 
)
virtual

write ValueVector into a plist file

Parameters
vecDatathe ValueVector want to save
fullPathThe full path to the file you want to save a string
Returns
bool
var writeValueVectorToFile ( var  vecData,
var  fullPath 
)
virtual

write ValueVector into a plist file

Parameters
vecDatathe ValueVector want to save
fullPathThe full path to the file you want to save a string
Returns
bool
local writeValueVectorToFile ( local  vecData,
local  fullPath 
)
virtual

write ValueVector into a plist file

Parameters
vecDatathe ValueVector want to save
fullPathThe full path to the file you want to save a string
Returns
bool
virtual std::string
getSuitableFOpen
( const std::string &  filenameUtf8) const
virtual

Windows fopen can't support UTF-8 filename Need convert all parameters fopen and other 3rd-party libs.

std::string name file for convertation from utf-8 std::string ansi filename in current locale

var getSuitableFOpen ( var  filenameUtf8)
virtual

Windows fopen can't support UTF-8 filename Need convert all parameters fopen and other 3rd-party libs.

std::string name file for convertation from utf-8 std::string ansi filename in current locale

local getSuitableFOpen ( local  filenameUtf8)
virtual

Windows fopen can't support UTF-8 filename Need convert all parameters fopen and other 3rd-party libs.

std::string name file for convertation from utf-8 std::string ansi filename in current locale

virtual ValueVector
getValueVectorFromFile
( const std::string &  filename)
virtual

Converts the contents of a file to a ValueVector.

This method is used internally.

var getValueVectorFromFile ( var  filename)
virtual

Converts the contents of a file to a ValueVector.

This method is used internally.

local getValueVectorFromFile ( local  filename)
virtual

Converts the contents of a file to a ValueVector.

This method is used internally.

virtual bool isFileExist ( const std::string &  filename) const
virtual

Checks whether a file exists.

If a relative path was passed in, it will be inserted a default root path at the beginning. The path of the file, it could be a relative or absolute path. True if the file exists, false if not.

var isFileExist ( var  filename)
virtual

Checks whether a file exists.

If a relative path was passed in, it will be inserted a default root path at the beginning. The path of the file, it could be a relative or absolute path. True if the file exists, false if not.

local isFileExist ( local  filename)
virtual

Checks whether a file exists.

If a relative path was passed in, it will be inserted a default root path at the beginning. The path of the file, it could be a relative or absolute path. True if the file exists, false if not.

virtual std::string
getFileExtension
( const std::string &  filePath) const
virtual

Gets filename extension is a suffix (separated from the base filename by a dot) in lower case.

Examples of filename extensions are .png, .jpeg, .exe, .dmg and .txt.

Parameters
filePathThe path of the file, it could be a relative or absolute path.
Returns
suffix for filename in lower case or empty if a dot not found.
var getFileExtension ( var  filePath)
virtual

Gets filename extension is a suffix (separated from the base filename by a dot) in lower case.

Examples of filename extensions are .png, .jpeg, .exe, .dmg and .txt.

Parameters
filePathThe path of the file, it could be a relative or absolute path.
Returns
suffix for filename in lower case or empty if a dot not found.
local getFileExtension ( local  filePath)
virtual

Gets filename extension is a suffix (separated from the base filename by a dot) in lower case.

Examples of filename extensions are .png, .jpeg, .exe, .dmg and .txt.

Parameters
filePathThe path of the file, it could be a relative or absolute path.
Returns
suffix for filename in lower case or empty if a dot not found.
virtual bool isAbsolutePath ( const std::string &  path) const
virtual

Checks whether the path is an absolute path.

On Android, if the parameter passed in is relative to "assets/", this method will treat it as an absolute path. Also on Blackberry, path starts with "app/native/Resources/" is treated as an absolute path.

The path that needs to be checked. True if it's an absolute path, false if not.

var isAbsolutePath ( var  path)
virtual

Checks whether the path is an absolute path.

On Android, if the parameter passed in is relative to "assets/", this method will treat it as an absolute path. Also on Blackberry, path starts with "app/native/Resources/" is treated as an absolute path.

The path that needs to be checked. True if it's an absolute path, false if not.

local isAbsolutePath ( local  path)
virtual

Checks whether the path is an absolute path.

On Android, if the parameter passed in is relative to "assets/", this method will treat it as an absolute path. Also on Blackberry, path starts with "app/native/Resources/" is treated as an absolute path.

The path that needs to be checked. True if it's an absolute path, false if not.

virtual bool isDirectoryExist ( const std::string &  dirPath) const
virtual

Checks whether the path is a directory.

The path of the directory, it could be a relative or an absolute path. True if the directory exists, false if not.

var isDirectoryExist ( var  dirPath)
virtual

Checks whether the path is a directory.

The path of the directory, it could be a relative or an absolute path. True if the directory exists, false if not.

local isDirectoryExist ( local  dirPath)
virtual

Checks whether the path is a directory.

The path of the directory, it could be a relative or an absolute path. True if the directory exists, false if not.

virtual bool createDirectory ( const std::string &  dirPath)
virtual

Creates a directory.

The path of the directory, it must be an absolute path. True if the directory have been created successfully, false if not.

var createDirectory ( var  dirPath)
virtual

Creates a directory.

The path of the directory, it must be an absolute path. True if the directory have been created successfully, false if not.

local createDirectory ( local  dirPath)
virtual

Creates a directory.

The path of the directory, it must be an absolute path. True if the directory have been created successfully, false if not.

virtual bool removeDirectory ( const std::string &  dirPath)
virtual

Removes a directory.

The path of the directory, it must be an absolute path. True if the directory have been removed successfully, false if not.

var removeDirectory ( var  dirPath)
virtual

Removes a directory.

The path of the directory, it must be an absolute path. True if the directory have been removed successfully, false if not.

local removeDirectory ( local  dirPath)
virtual

Removes a directory.

The path of the directory, it must be an absolute path. True if the directory have been removed successfully, false if not.

virtual bool removeFile ( const std::string &  filepath)
virtual

Removes a file.

The path of the file, it must be an absolute path. True if the file have been removed successfully, false if not.

var removeFile ( var  filepath)
virtual

Removes a file.

The path of the file, it must be an absolute path. True if the file have been removed successfully, false if not.

local removeFile ( local  filepath)
virtual

Removes a file.

The path of the file, it must be an absolute path. True if the file have been removed successfully, false if not.

virtual bool renameFile ( const std::string &  path,
const std::string &  oldname,
const std::string &  name 
)
virtual

Renames a file under the given directory.

The parent directory path of the file, it must be an absolute path. The current name of the file. The new name of the file. True if the file have been renamed successfully, false if not.

var renameFile ( var  path,
var  oldname,
var  name 
)
virtual

Renames a file under the given directory.

The parent directory path of the file, it must be an absolute path. The current name of the file. The new name of the file. True if the file have been renamed successfully, false if not.

local renameFile ( local  path,
local  oldname,
local  name 
)
virtual

Renames a file under the given directory.

The parent directory path of the file, it must be an absolute path. The current name of the file. The new name of the file. True if the file have been renamed successfully, false if not.

virtual bool renameFile ( const std::string &  oldfullpath,
const std::string &  newfullpath 
)
virtual

Renames a file under the given directory.

Parameters
oldfullpathThe current fullpath of the file. Includes path and name.
newfullpathThe new fullpath of the file. Includes path and name.
Returns
True if the file have been renamed successfully, false if not.
var renameFile ( var  oldfullpath,
var  newfullpath 
)
virtual

Renames a file under the given directory.

Parameters
oldfullpathThe current fullpath of the file. Includes path and name.
newfullpathThe new fullpath of the file. Includes path and name.
Returns
True if the file have been renamed successfully, false if not.
local renameFile ( local  oldfullpath,
local  newfullpath 
)
virtual

Renames a file under the given directory.

Parameters
oldfullpathThe current fullpath of the file. Includes path and name.
newfullpathThe new fullpath of the file. Includes path and name.
Returns
True if the file have been renamed successfully, false if not.
virtual long getFileSize ( const std::string &  filepath)
virtual

Retrieve the file size.

If a relative path was passed in, it will be inserted a default root path at the beginning. The path of the file, it could be a relative or absolute path. The file size.

var getFileSize ( var  filepath)
virtual

Retrieve the file size.

If a relative path was passed in, it will be inserted a default root path at the beginning. The path of the file, it could be a relative or absolute path. The file size.

local getFileSize ( local  filepath)
virtual

Retrieve the file size.

If a relative path was passed in, it will be inserted a default root path at the beginning. The path of the file, it could be a relative or absolute path. The file size.


The documentation for this class was generated from the following file: