文件存儲(chǔ)
說(shuō)明:
開(kāi)發(fā)前請(qǐng)熟悉鴻蒙開(kāi)發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
導(dǎo)入模塊
import file from '@system.file';
file.move
move(Object): void
將指定文件移動(dòng)到其他指定位置。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
srcUri | string | 是 | 要移動(dòng)的文件的uri。字符串最大長(zhǎng)度為128,且不能包含“"*+,:;<=>?[] |
dstUri | string | 是 | 文件要移動(dòng)到的位置的uri。字符串最大長(zhǎng)度為128,且不能包含“"*+,:;<=>?[] |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù),返回文件要移動(dòng)到的位置的uri。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O錯(cuò)誤。 |
301 | 文件或目錄不存在。 |
示例:
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
將指定文件拷貝并存儲(chǔ)到指定位置。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
srcUri | string | 是 | 要拷貝的文件的uri。 |
dstUri | string | 是 | 文件要拷貝到的位置的uri。 不支持用應(yīng)用資源路徑或tmp類(lèi)型的uri。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù),返回文件要拷貝到的位置的uri。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O錯(cuò)誤。 |
301 | 文件或目錄不存在。 |
示例:
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
獲取指定路徑下全部文件的列表。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 目錄uri。字符串最大長(zhǎng)度為128,且不能包含“"*+,:;<=>?[] |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
success返回值:
參數(shù)名 | 類(lèi)型 | 說(shuō)明 |
---|---|---|
fileList | Array | 獲取的文件列表,其中每個(gè)文件的信息的格式為: { uri:'file1', lastModifiedTime:1589965924479, length:10240, type: 'file' } |
表1 FileInfo
參數(shù)名 | 類(lèi)型 | 說(shuō)明 |
---|---|---|
uri | string | 文件的 uri。 |
lastModifiedTime | number | 文件上一次保存時(shí)的時(shí)間戳,顯示從1970/01/01 00:00:00 GMT到當(dāng)前時(shí)間的毫秒數(shù)。 |
length | number | 文件的大小,單位為字節(jié)。 |
type | string | 文件的類(lèi)型,可選值為: - dir:目錄; - file:文件。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O錯(cuò)誤。 |
301 | 文件或目錄不存在。 |
示例:
export default {
list() {
file.list({
uri: 'internal://app/pic',
success: function(data) {
console.log(JSON.stringify(data.fileList));
},
fail: function(data, code) {
console.error('call fail callback fail, code: ' + code + ', data: ' + data);
},
});
}
}
file.get
get(Object): void
獲取指定本地文件的信息。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 文件的uri。 |
recursive | boolean | 否 | 是否進(jìn)行遞歸獲取子目錄文件列表,缺省為false。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
success返回值:
參數(shù)名 | 類(lèi)型 | 說(shuō)明 |
---|---|---|
uri | string | 文件的uri。 |
length | number | 文件字節(jié)長(zhǎng)。 |
lastModifiedTime | number | 文件保存時(shí)的時(shí)間戳,從1970/01/01 00:00:00到當(dāng)前時(shí)間的毫秒數(shù)。 |
type | string | 文件類(lèi)型,可選值為: - dir:目錄; - file:文件。 |
subFiles | Array | 文件列表。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O錯(cuò)誤。 |
301 | 文件或目錄不存在。 |
示例:
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
刪除本地文件。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 刪除文件的uri,不能是應(yīng)用資源路徑。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 參數(shù)錯(cuò)誤。 |
300 | I/O錯(cuò)誤。 |
301 | 文件或目錄不存在。 |
示例:
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
寫(xiě)文本內(nèi)容到指定文件。僅支持文本文檔讀寫(xiě)。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 本地文件uri,如果文件不存在會(huì)創(chuàng)建文件。 |
text | string | 是 | 寫(xiě)入的字符串。 |
encoding | string | 否 | 編碼格式,默認(rèn)為UTF-8。 |
append | boolean | 否 | 是否追加模式,默認(rèn)為false。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 參數(shù)錯(cuò)誤。 |
300 | I/O錯(cuò)誤。 |
示例:
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
寫(xiě)B(tài)uffer內(nèi)容到指定文件。僅支持文本文檔讀寫(xiě)。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 本地文件uri,如果文件不存在會(huì)創(chuàng)建文件。 |
buffer | Uint8Array | 是 | 寫(xiě)入的Buffer。 |
position | number | 否 | 文件開(kāi)始寫(xiě)入數(shù)據(jù)的位置的偏移量,默認(rèn)為0。 |
append | boolean | 否 | 是否追加模式,默認(rèn)為false。當(dāng)設(shè)置為true時(shí),position參數(shù)無(wú)效。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O錯(cuò)誤。 |
示例:
export default {
writeArrayBuffer() {
file.writeArrayBuffer({
uri: 'internal://app/test',
buffer: new Uint8Array(8), //buffer為Uint8Array類(lèi)型
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
從指定文件中讀取文本內(nèi)容。僅支持文本文檔讀寫(xiě)。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 本地文件uri。 |
encoding | string | 否 | 編碼格式,缺省為UTF-8。 |
position | number | 否 | 讀取的起始位置,默認(rèn)值為文件的起始位置。 |
length | number | 否 | 讀取的長(zhǎng)度,默認(rèn)值為4096。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
success返回值:
參數(shù)名 | 類(lèi)型 | 說(shuō)明 |
---|---|---|
text | string | 讀取到的文本內(nèi)容。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O錯(cuò)誤。 |
301 | 文件或目錄不存在。 |
302 | 要讀取的文件內(nèi)容超過(guò)4KB。 |
示例:
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
從指定文件中讀取Buffer內(nèi)容。僅支持文本文檔讀寫(xiě)。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 本地文件uri。 |
position | number | 否 | 讀取的起始位置,缺省為文件的起始位置。 |
length | number | 否 | 需要讀取的長(zhǎng)度,缺省則讀取到文件結(jié)尾。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
success返回值:
參數(shù)名 | 類(lèi)型 | 說(shuō)明 |
---|---|---|
buffer | Uint8Array | 讀取到的文件內(nèi)容。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O錯(cuò)誤。 |
301 | 文件或目錄不存在。 |
示例:
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
判斷指定文件或目錄是否存在。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 目錄或文件uri。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O 錯(cuò)誤。 |
301 | 文件或目錄不存在。 |
示例:
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
創(chuàng)建指定目錄。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 目錄的uri路徑。 |
recursive | boolean | 否 | 是否遞歸創(chuàng)建該目錄的上級(jí)目錄,缺省為false。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O 錯(cuò)誤。 |
示例:
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
刪除指定目錄。
系統(tǒng)能力: SystemCapability.FileManagement.File.FileIO
參數(shù):
參數(shù)名 | 類(lèi)型 | 必填 | 說(shuō)明 |
---|---|---|---|
uri | string | 是 | 目錄的uri路徑。 |
recursive | boolean | 否 | 是否遞歸刪除子文件和子目錄,缺省為false。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
fail返回錯(cuò)誤代碼:
錯(cuò)誤碼 | 說(shuō)明 |
---|---|
202 | 出現(xiàn)參數(shù)錯(cuò)誤。 |
300 | 出現(xiàn)I/O 錯(cuò)誤。 |
301 | 文件或目錄不存在。HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
示例:
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);
},
});
}
}
審核編輯 黃宇
-
鴻蒙
+關(guān)注
關(guān)注
57文章
2397瀏覽量
43098
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論