《微信小程序开发从入门到实战》学习七十四

发布时间:2024年01月07日

6.8 文件API

使用文件API可以对用户手机设备中的文件进行一些操作。

为安全考虑,不同小程序间保存的文件是互相隔离的,

小程序外部获取的文件(如从手机中选择的文件)在小程序中也都是以临时文件存在的。

6.8.1 选择文件API

使用wx.chooseMessageFile接口可从客户端会话中选择文件,该接口从基础库2.5.0开始支持。接口支持Object参,参属性如下所示:

count(必填):最多可以选择的文件个数,可选值0-100

type:文件的类型,可选值为all、video、image和file

etension:根据文件拓展名过滤,仅type==file时有效。每项不能是空字符串。默认不过滤,最低版本2.6.0

success

fail

complete

type表示选择文件时关注的文件的类型:当type为all时表示从所有文件中选取;当type为video时选择视频文件,为image时选择图片文件,为file时可选除了图片和视频之外的所有文件。示例代码如下:

????wx.chooseMessageFile({

??????count:?10,

??????type:?'image',

??????success(res)?{

????????//?res.tempFiles?是一个数组,其中保存的是被选中的文件的信息

????????const?tempFile1?=?res.tempFiles[0]?//?获取第一个被选择的文件

????????console.log(tempFile1.path)?//?临时文件的路径

????????console.log(tempFile1.size)?//?临时文件的大小,单位为B

????????console.log(tempFile1.name)?//?文件的名称

????????console.log(tempFile1.type)?//?文件的类型,可能取值为video,image或file

????????console.log(tempFile1.times)?//?选择的文件的会话发送时间(number类型的UNIX时间戳)

??????}

????})

6.8.2?保存文件API

调用下载文件API、选择文件API可以拿到文件的临时路径。临时文件的保存周期不持久,使用wx.saveFile接口可以将临时文件保存下来,延长文件的保存舟曲,示例代码如下:

????wx.chooseImage({

??????success(res)?{

????????//?tempFilePaths为一个数组,其中保存了选择的照片文件的临时路径

????????const?tempFilePaths?=?res.tempFilePaths

????????//?将临时文件保存下来

????????wx.saveFile({

??????????tempFilePath:?tempFilePaths[0],

??????????success(res)?{

????????????const?savedFilePath?=?res.savedFilePath?//?存储的文件路径

??????????}

????????})

??????}

????})

注:本地文件存储的大小限制为10MB。saveFile会把临时文件移动,因此调用成功后传入的tempFilePath将不可用。

6.8.3?文件列表API

使用wx.getSavedFileList接口可获取小程序下已保存的本地文件列表。使用代码如下:

????wx.getSavedFileList({

??????success(res){

????????console.log(res.fileList)

??????}

????})

success的fileList数组的每一项元素是一个Object值,其中包含小程序保存的所有文件信息,filePath表示文件的本地路径,size表示文件的大小,createTime表示文件保存的时间戳。

文章来源:https://blog.csdn.net/xy2937131682/article/details/135434009
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。