文件主要分为两大类:
代码包文件:代码包文件指的是在项目目录中添加的文件。
本地文件:通过调用接口本地产生,或通过网络下载下来,存储到本地的文件。
其中本地文件又分为三种:
本地临时文件:临时产生,随时会被回收的文件。运行时最多存储4GB,结束运行后,如果已使用超过2GB,会以文件为维度按照最近使用时间从远到近进行清理至少于2GB。
本地缓存文件:小程序通过接口把本地临时文件缓存后产生的文件,不能自定义目录和文件名。跟本地用户文件共计,小程序(含小游戏)最多可存储200MB。
本地用户文件:小程序通过接口把本地临时文件缓存后产生的文件,允许自定义目录和文件名。跟本地缓存文件共计,小程序(含小游戏)最多可存储200MB。
(1)获取文件管理器
可以获取到全局唯一的文件系统管理器,所有文件系统的管理操作通过FileSystemManager来调用
const fs=wx.getFileSystemManager()
(2)临时文件示例
wx.chooseImage({
success: function (res) {
var tempFilePaths = res.tempFilePaths tempFilePaths的每一项是一个本地临时文件路径
}
})
fs.access(path):检查该文件是否存在,减少重复文件下载,提升用户体验
(3)转换成本地缓存文件
fs.saveFile({
tempFilePath: '', 传入一个本地临时文件路径
success(res) {
console.log(res.savedFilePath) res.savedFilePath为一个本地缓存文件路径
}
})
(4)转换成本地用户文件
fs.writeFileSync(`${wx.env.USER_DATA_PATH}/文件名称.后缀`, '文件内容', 'utf8')
(5)保存文件系统的文件到用户磁盘,仅在 PC 端支持
wx.saveFileToDisk({
filePath 待保存文件路径
success
...
})
(6)保存文件到本地
会把临时文件移动,因此调用成功后传入的tempFilePath将不可用
wx.saveFile({
tempFilePath 需要保存的文件的临时路径(本地路径)
success
...
})
(7)新开页面打开文档
wx.openDocument({
filePath 文件路径(本地路径),可通过wx.downloadFile获得
showMenu 是否显示右上角菜单
fileType 文件类型,指定文件类型打开文件
doc doc格式
docx docx格式
xls xls格式
xlsx xlsx格式
ppt ppt格式
pptx pptx格式
pdf pdf格式
success
...
})
(8)获取该小程序下已保存的本地缓存文件列表
wx.getSavedFileList({
success
...
})
(9)删除本地缓存文件
wx.removeSavedFile({
filePath 需要删除的文件路径(本地路径)
success
...
})
示例:
wx.getSavedFileList({
success (res) {
if (res.fileList.length > 0){
wx.removeSavedFile({
filePath: res.fileList[0].filePath,
complete (res) {
console.log(res)
}
})
}
}
})
(10)获取本地文件的文件信息。此接口只能用于获取已保存到本地的文件
wx.getSavedFileInfo({
filePath 文件路径(本地路径)
success
...
})
(11)获取获取本地文件的文件信息以及临时文件信息
wx.getFileInfo({
filePath 本地文件路径(本地路径)
digestAlgorithm 计算文件摘要的算法
md5
sha1
success
size 文件大小,以字节为单位
digest 按照传入的digestAlgorithm计算得出的的文件摘要
...
})
(12)更多类似node文件fs模块的内容
查看:https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.html
小程序 文件系统以及相关api
最新推荐文章于 2022-07-04 21:52:33 发布