# File Storage > ![icon-note.gif](public_sys-resources/icon-note.gif) **Note:** > - The APIs of this module are no longer maintained since API version 6. It is recommended that you use [`@ohos.fileio`](js-apis-fileio.md) instead. > > - The initial APIs of this module are supported since API version 3. Newly added APIs will be marked with a superscript to indicate their earliest API version. ## Modules to Import ``` import file from '@system.file'; ``` ## file.move move(Object): void Moves a specified file to a given location. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | srcUri | string | Yes | URI of the file to move. | | dstUri | string | Yes | URI of the location to which the file is to move. | | success | Function | No | Called when the source file is moved to the specified location successfully. This function returns the URI of the destination location. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | | 301 | File or directory not exist. | **Example** ``` export default { move() { file.move({ srcUri: 'internal://app/myfiles1', dstUri: 'internal://app/myfiles2', success: function(uri) { console.log('call success callback success'); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.copy copy(Object): void Copies a file and saves the copy to a specified location. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | srcUri | string | Yes | URI of the file to copy. | | dstUri | string | Yes | URI of the location to which the copy is to save.
The directory of application resources and URI of the **tmp** type are not supported. | | success | Function | No | Called when the source file is copied and saved to the specified location successfully. This function returns the URI of the destination location. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | | 301 | File or directory not exist. | **Example** ``` export default { copy() { file.copy({ srcUri: 'internal://app/file.txt', dstUri: 'internal://app/file_copy.txt', success: function(uri) { console.log('call success callback success'); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.list list(Object): void Obtains the list of all files in a specified directory. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of the directory. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | Return values of the **success** callback | Name | Type | Description | | -------- | -------- | -------- | | fileList | Array<FileInfo> | File list. The format of each file is as follows:
{
uri:'file1',
lastModifiedTime:1589965924479,
length:10240,
type: 'file'
} | **Table1** FileInfo | Name | Type | Description | | -------- | -------- | -------- | | uri | string | File URI. | | lastModifiedTime | number | Timestamp when the file is stored the last time, which is the number of milliseconds elapsed since 1970/01/01 00:00:00 GMT. | | length | number | File size, in bytes. | | type | string | File type. Available values are as follows:
- **dir**: directory
- **file**: file | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | | 301 | File or directory not exist. | **Example** ``` export default { list() { file.list({ uri: 'internal://app/pic', success: function(data) { console.log(data.fileList); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.get get(Object): void Obtains information about a specified local file. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | File URI. | | recursive | boolean | No | Whether to recursively obtain the file list under a subdirectory. The default value is **false**. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | Return values of the **success** callback | Name | Type | Description | | -------- | -------- | -------- | | uri | string | File URI. | | length | number | File size, in bytes. | | lastModifiedTime | number | Timestamp when the file is stored the last time, which is the number of milliseconds elapsed since 1970/01/01 00:00:00 GMT. | | type | string | File type. The values are as follows:
- **dir**: directory
- **file**: file | | subFiles | Array | File list. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | | 301 | File or directory not exist. | **Example** ``` export default { get() { file.get({ uri: 'internal://app/file', success: function(data) { console.log(data.uri); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.delete delete(Object): void Deletes local files. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of the file to delete, which cannot be an application resource path. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Incorrect parameter. | | 300 | I/O error. | | 301 | File or directory not exist. | **Example** ``` export default { delete() { file.delete({ uri: 'internal://app/my_file', success: function() { console.log('call delete success.'); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.writeText writeText(Object): void Writes text into a specified file. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of a local file. If it does not exist, a file will be created. | | text | string | Yes | Character string to write into the local file. | | encoding | string | No | Encoding format. The default format is UTF-8. | | append | boolean | No | Whether to enable the append mode. The default value is **false**. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Incorrect parameter. | | 300 | I/O error. | **Example** ``` export default { writeText() { file.writeText({ uri: 'internal://app/test.txt', text: 'Text that just for test.', success: function() { console.log('call writeText success.'); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.writeArrayBuffer writeArrayBuffer(Object): void Writes buffer data into a specified file. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of a local file. If it does not exist, a file will be created. | | buffer | Uint8Array | Yes | Buffer from which the data is derived. | | position | number | No | Offset to the position where the writing starts. The default value is **0**. | | append | boolean | No | Whether to enable the append mode. The default value is **false**. If the value is **true**, the **position** parameter will become invalid. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | **Example** ``` export default { writeArrayBuffer() { file.writeArrayBuffer({ uri: 'internal://app/test', buffer: new Uint8Array(8), // The buffer is of the Uint8Array type. success: function() { console.log('call writeArrayBuffer success.'); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.readText readText(Object): void Reads text from a specified file. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of a local file. | | encoding | string | No | Encoding format. The default format is UTF-8. | | position | number | No | Position where the reading starts. The default value is the start position of the file. | | length | number | No | Length of the text to be read (in bytes). The default value is **4096**. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | Return values of the **success** callback | Name | Type | Description | | -------- | -------- | -------- | | text | string | Text read from the specified file. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | | 301 | The file or directory does not exist. | | 302 | The size of text to read exceeds 4096 bytes. | **Example** ``` export default { readText() { file.readText({ uri: 'internal://app/text.txt', success: function(data) { console.log('call readText success: ' + data.text); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.readArrayBuffer readArrayBuffer(Object): void Reads buffer data from a specified file. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of a local file. | | position | number | No | Position where the reading starts. The default value is the start position of the file. | | length | number | No | Length of data to read. If this parameter is not set, the reading proceeds until the end of the file. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | Return values of the **success** callback | Name | Type | Description | | -------- | -------- | -------- | | buffer | Uint8Array | File content that is read | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | | 301 | File or directory not exist. | **Example** ``` export default { readArrayBuffer() { file.readArrayBuffer({ uri: 'internal://app/test', position: 10, length: 200, success: function(data) { console.log('call readArrayBuffer success: ' + data.buffer); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.access access(Object): void Checks whether a specified file or directory exists. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of the directory or file. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | | 301 | File or directory not exist. | **Example** ``` export default { access() { file.access({ uri: 'internal://app/test', success: function() { console.log('call access success.'); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.mkdir mkdir(Object): void Creates a specified directory. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of the directory. | | recursive | boolean | No | Whether to recursively create upper-level directories of the specified directory. The default value is **false**. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | **Example** ``` export default { mkdir() { file.mkdir({ uri: 'internal://app/test_directory', success: function() { console.log('call mkdir success.'); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ``` ## file.rmdir rmdir(Object): void Deletes a specified directory. **System capability**: SystemCapability.FileManagement.File.FileIO **Parameters** | Name | Type | Mandatory | Description | | -------- | -------- | -------- | -------- | | uri | string | Yes | URI of the directory. | | recursive | boolean | No | Whether to recursively delete subfiles and subdirectories of the specified directory. The default value is **false**. | | success | Function | No | Called when the operation is successful. | | fail | Function | No | Called when the operation fails. | | complete | Function | No | Called when the execution is complete. | One of the following error codes will be returned if the operation fails. | Error Code | Description | | -------- | -------- | | 202 | Invalid parameter. | | 300 | I/O error. | | 301 | File or directory not exist. | **Example** ``` export default { rmdir() { file.rmdir({ uri: 'internal://app/test_directory', success: function() { console.log('call rmdir success.'); }, fail: function(data, code) { console.error('call fail callback fail, code: ' + code + ', data: ' + data); }, }); } } ```