Utilities for reading and writing files on various platforms. Wrapper for FileUtil that sanitizes paths for script safety.

Static variables

@:value(FileUtil.FILE_EXTENSION_INFO_FNFC)staticfinalread onlyFILE_EXTENSION_INFO_FNFC:FileDialogExtensionInfo = FileUtil.FILE_EXTENSION_INFO_FNFC

@:value(FileUtil.FILE_EXTENSION_INFO_PNG)staticfinalread onlyFILE_EXTENSION_INFO_PNG:FileDialogExtensionInfo = FileUtil.FILE_EXTENSION_INFO_PNG

@:value(FileUtil.FILE_EXTENSION_INFO_ZIP)staticfinalread onlyFILE_EXTENSION_INFO_ZIP:FileDialogExtensionInfo = FileUtil.FILE_EXTENSION_INFO_ZIP

@:value(FileUtil.FILE_FILTER_FNFC)staticfinalread onlyFILE_FILTER_FNFC:FileFilter = FileUtil.FILE_FILTER_FNFC

@:value(FileUtil.FILE_FILTER_JSON)staticfinalread onlyFILE_FILTER_JSON:FileFilter = FileUtil.FILE_FILTER_JSON

@:value(FileUtil.FILE_FILTER_PNG)staticfinalread onlyFILE_FILTER_PNG:FileFilter = FileUtil.FILE_FILTER_PNG

@:value(FileUtil.FILE_FILTER_ZIP)staticfinalread onlyFILE_FILTER_ZIP:FileFilter = FileUtil.FILE_FILTER_ZIP

Static methods

staticappendStringToPath(path:String, data:String):Void

staticbrowseFileReference(callback:FileReference ‑> Void):Void

staticbrowseForBinaryFile(dialogTitle:String, ?typeFilter:Array<FileDialogExtensionInfo>, onSelect:SelectedFileInfo ‑> Void, ?onCancel:() ‑> Void):Void

staticbrowseForDirectory(?typeFilter:Array<FileFilter>, onSelect:String ‑> Void, ?onCancel:() ‑> Void, ?defaultPath:String, ?dialogTitle:String):Bool

staticbrowseForMultipleFiles(?typeFilter:Array<FileFilter>, onSelect:Array<String> ‑> Void, ?onCancel:() ‑> Void, ?defaultPath:String, ?dialogTitle:String):Bool

staticbrowseForSaveFile(?typeFilter:Array<FileFilter>, onSelect:String ‑> Void, ?onCancel:() ‑> Void, ?defaultPath:String, ?dialogTitle:String):Bool

staticbrowseForTextFile(dialogTitle:String, ?typeFilter:Array<FileDialogExtensionInfo>, onSelect:SelectedFileInfo ‑> Void, ?onCancel:() ‑> Void):Void

staticcreateDirIfNotExists(dir:String):Void

staticcreateZIPFromEntries(entries:Array<Entry>):Bytes

@:value({ recursive : false })staticdeleteDir(path:String, recursive:Bool = false, ?ignore:Array<String>):Void

staticdeleteFile(path:String):Void

staticdirectoryExists(path:String):Bool

staticfileExists(path:String):Bool

staticgetDirSize(path:String):Int

staticgetFileSize(path:String):Int

staticgetTempDir():Null<String>

@:value({ sanitizeFirst : true })staticisProtected(path:String, sanitizeFirst:Bool = true):Bool

Check against protected paths.

Parameters:

path

The path to check.

Returns:

Whether the path is protected.

staticmakeZIPEntry(name:String, content:String):Entry

staticmakeZIPEntryFromBytes(name:String, data:Bytes):Entry

staticmapZIPEntriesByName(input:Array<Entry>):Map<String, Entry>

@:value({ strict : true })staticmoveDir(path:String, destination:String, ?ignore:Array<String>, strict:Bool = true):Void

staticmoveFile(path:String, destination:String):Void

@:value({ createIfNotExists : true })staticopenFolder(pathFolder:String, createIfNotExists:Bool = true):Void

staticopenSelectFile(path:String):Void

staticpathExists(path:String):Bool

staticreadBytesFromPath(path:String):Bytes

staticreadDir(path:String):Array<String>

staticreadJSONFromPath(path:String):Dynamic

staticreadStringFromPath(path:String):String

staticreadZIPFromBytes(input:Bytes):Array<Entry>

@:value({ keepExtension : true })staticrename(path:String, newName:String, keepExtension:Bool = true):Void

staticsanitizePath(path:String):String

Prevent paths from exiting the root.

Parameters:

path

The path to sanitize.

Returns:

The sanitized path.

@:value({ force : false })staticsaveChartAsFNFC(resources:Array<Entry>, ?onSave:Array<String> ‑> Void, ?onCancel:() ‑> Void, ?defaultPath:String, force:Bool = false):Bool

staticsaveFile(data:Bytes, ?typeFilter:Array<FileFilter>, ?onSave:String ‑> Void, ?onCancel:() ‑> Void, ?defaultFileName:String, ?dialogTitle:String):Bool

@:value({ force : false })staticsaveFilesAsZIP(resources:Array<Entry>, ?onSave:Array<String> ‑> Void, ?onCancel:() ‑> Void, ?defaultPath:String, force:Bool = false):Bool

@:value({ mode : Skip })staticsaveFilesAsZIPToPath(resources:Array<Entry>, path:String, mode:FileWriteMode = Skip):Bool

@:value({ force : false })staticsaveMultipleFiles(resources:Array<Entry>, ?onSaveAll:Array<String> ‑> Void, ?onCancel:() ‑> Void, ?defaultPath:String, force:Bool = false):Bool

@:value({ mode : Skip })staticwriteBytesToPath(path:String, data:Bytes, mode:FileWriteMode = Skip):Void

staticwriteFileReference(path:String, data:String, callback:String ‑> Void):Void

@:value({ mode : Skip })staticwriteStringToPath(path:String, data:String, mode:FileWriteMode = Skip):Void