Skip to content

FileManager

Read and write files on the local file system

FileManager provides access to the local file system and iCloud storage.

Use FileManager to:

Examples

javascript
let fm = FileManager.local();
fm.writeString("test.txt", "Hello World");
let content = fm.readString("test.txt");
console.log(content);
javascript
let fm = FileManager.local();
let files = fm.listContents(fm.documentsDirectory());
files.forEach(f => console.log(f));

Methods

read

Read file as base64 data

typescript
read(filePath): string | null
  • filePath - Path to the file

Returns: Base64 encoded string of file contents

Example:

javascript
let data = fm.read("file.bin")

readString

Read file as string

typescript
readString(filePath): string | null
  • filePath - Path to the file

Returns: File contents as UTF-8 string

Example:

javascript
let text = fm.readString("file.txt")

readImage

Read file as image

typescript
readImage(filePath): object | null
  • filePath - Path to the image file

Returns: Image data with base64, width, and height

Example:

javascript
let img = fm.readImage("photo.png")

write

Write data to file

typescript
write(filePath, content): void
  • filePath - Path to the file
  • content - Content to write (Data, string, or base64)

Example:

javascript
fm.write("file.txt", data)

writeString

Write string to file

typescript
writeString(filePath, content): void
  • filePath - Path to the file
  • content - String content to write

Example:

javascript
fm.writeString("file.txt", "content")

writeImage

Write image to file

typescript
writeImage(filePath, imageData): void
  • filePath - Path to the file
  • imageData - Image data object with base64 property

Example:

javascript
fm.writeImage("photo.png", imageData)

remove

Delete a file or directory

typescript
remove(filePath): void
  • filePath - Path to delete

Example:

javascript
fm.remove("old-file.txt")

move

Move a file or directory

typescript
move(sourceFilePath, destinationFilePath): void
  • sourceFilePath - Source path
  • destinationFilePath - Destination path

Example:

javascript
fm.move("old.txt", "new.txt")

copy

Copy a file or directory

typescript
copy(sourceFilePath, destinationFilePath): void
  • sourceFilePath - Source path
  • destinationFilePath - Destination path

Example:

javascript
fm.copy("original.txt", "backup.txt")

fileExists

Check if file exists

typescript
fileExists(filePath): boolean
  • filePath - Path to check

Returns: true if file exists

Example:

javascript
if (fm.fileExists("file.txt")) { ... }

isDirectory

Check if path is a directory

typescript
isDirectory(path): boolean
  • path - Path to check

Returns: true if path is a directory

Example:

javascript
if (fm.isDirectory("folder")) { ... }

createDirectory

Create a directory

typescript
createDirectory(path, intermediateDirectories): void
  • path - Directory path to create
  • intermediateDirectories - Create intermediate directories if needed

Example:

javascript
fm.createDirectory("new/nested/dir", true)

temporaryDirectory

Get temporary directory path

typescript
temporaryDirectory(): string

Returns: Path to temporary directory

Example:

javascript
let tmp = fm.temporaryDirectory()

cacheDirectory

Get cache directory path

typescript
cacheDirectory(): string

Returns: Path to cache directory

Example:

javascript
let cache = fm.cacheDirectory()

documentsDirectory

Get documents directory path

typescript
documentsDirectory(): string

Returns: Path to documents directory

Example:

javascript
let docs = fm.documentsDirectory()

libraryDirectory

Get library directory path

typescript
libraryDirectory(): string

Returns: Path to library directory

Example:

javascript
let lib = fm.libraryDirectory()

joinPath

Join two path components

typescript
joinPath(lhsPath, rhsPath): string
  • lhsPath - First path component
  • rhsPath - Second path component

Returns: Combined path

Example:

javascript
let path = fm.joinPath(fm.documentsDirectory(), "file.txt")

fileName

Get file name from path

typescript
fileName(filePath, includeFileExtension): string
  • filePath - Full file path
  • includeFileExtension - Include extension in result

Returns: File name

Example:

javascript
let name = fm.fileName("/path/to/file.txt", false)

fileExtension

Get file extension

typescript
fileExtension(filePath): string
  • filePath - File path

Returns: File extension including dot (e.g., ".txt")

Example:

javascript
let ext = fm.fileExtension("file.txt")

creationDate

Get file creation date

typescript
creationDate(filePath): Promise | null
  • filePath - File path

Returns: JavaScript Date object

Example:

javascript
let date = fm.creationDate("file.txt")

modificationDate

Get file modification date

typescript
modificationDate(filePath): Promise | null
  • filePath - File path

Returns: JavaScript Date object

Example:

javascript
let date = fm.modificationDate("file.txt")

fileSize

Get file size in KB

typescript
fileSize(filePath): number
  • filePath - File path

Returns: File size in kilobytes

Example:

javascript
let size = fm.fileSize("file.txt")

allTags

Get all tags for a file

typescript
allTags(): string[]

addTag

Add a tag to a file

typescript
addTag(): void

removeTag

Remove a tag from a file

typescript
removeTag(): void

readExtendedAttribute

Read extended attribute

typescript
readExtendedAttribute(): string | null

writeExtendedAttribute

Write extended attribute

typescript
writeExtendedAttribute(): void

removeExtendedAttribute

Remove extended attribute

typescript
removeExtendedAttribute(): void

allExtendedAttributes

List all extended attributes

typescript
allExtendedAttributes(): string[]

listContents

List contents of a directory

typescript
listContents(directoryPath): string[]
  • directoryPath - Directory path

Returns: Array of file names in the directory

Example:

javascript
let files = fm.listContents(fm.documentsDirectory())

getUTI

Get Uniform Type Identifier for file

typescript
getUTI(filePath): string | null
  • filePath - File path

Returns: UTI string

Example:

javascript
let uti = fm.getUTI("image.png")

downloadFileFromiCloud

Download file from iCloud

typescript
downloadFileFromiCloud(filePath, callback): void
  • filePath - File path
  • callback - Callback when download completes

Example:

javascript
await fm.downloadFileFromiCloud("file.txt")

isFileStoredIniCloud

Check if file is stored in iCloud

typescript
isFileStoredIniCloud(): boolean

isFileDownloaded

Check if iCloud file is downloaded locally

typescript
isFileDownloaded(): boolean

local

Get local file manager

typescript
static local(): FileManager

Returns: FileManager for local documents directory

Example:

javascript
let fm = FileManager.local()

iCloud

Get iCloud file manager

typescript
static iCloud(): FileManager

Returns: FileManager for iCloud documents

Example:

javascript
let fm = FileManager.iCloud()