HomeDocs
跳到主要内容

FileSystemManager.readFile

简介

读取本地文件内容。单个文件大小上限为 100M。

使用限制

基础库 3.0.0 或更高版本支持。

参数

Object object

属性类型默认值必填说明
filePathstring要读取的文件的路径(如果读取的是小程序内的目录,例如根目录下的 images 目录内的图片,则可以传 "images/xx.png")
encodingstring指定读取文件的字符编码,如果不传 encoding,则以 ArrayBuffer 格式读取文件的二进制内容。
合法值:
1. ascii
2. base64
3. binary
4. hex
5. ucs2 以小端序读取
6. ucs-2 以小端序读取
7. utf16le 以小端序读取
8. utf-16le 以小端序读取
9. utf-8
10. utf8
11. latin1
lengthnumber指定文件的长度,如果不指定,则读到文件末尾。
有效范围:[1, fileLength]
单位:byte
positionnumber从文件指定位置开始读,如果不指定,则从文件头开始读。读取的范围应该是左闭右开区间 [position, position+length)。
有效范围:[0, fileLength - 1]
单位:byte
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数

Object res

属性类型说明
datastring/ArrayBuffer文件内容
successstringtrue-成功

object.fail 回调函数

参数

Object res

属性类型说明
errMsgstring错误信息
successstringfalse-失败

errMsg 说明

错误信息说明
parameter error: F10001参数不合法
fail sdcard not mounted: F10002Android sdcard 挂载失败
fail no such file or directory: F10007 ${filePath}指定的 filePath 所在目录不存在
native buffer exceeds size limit: F10008文件大小超出上限(100M)
the named is ${encoding} charset is not supported!当前字符编码不支持

示例代码

// pages/index/index.js

Page({
readFile() {
const fs = dlt.getFileSystemManager();
fs.readFile({
filePath: `${dlt.env.USER_DATA_PATH}/hello.txt`,
encoding: "utf8",
position: 0,
success(res) {
console.log(res.data);
},
fail(res) {
console.error(res);
},
});
},
});
Privacy agreementDeveloper agreementcontact us: developer_service.mi@transsion.com © 2024 MiniApp. All Rights Reserved.