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

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表示文件保存的时间戳。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/604095.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024.1.7 Spark SQL , DataFrame

目录 一 . SparkSQL简介 二 . Spark SQL与HIVE的异同 三 . DataFrame 1. 创建 DataFrame 2. RDD转换DataFrame 四 . 操作DataFrame SQL方式: DSL方式: 一 . SparkSQL简介 Spark SQL只能处理结构化数据 ,属于Spark框架一个部分 Schema:元数据信息 特点: 融合性 ,统一数…

批量删除文件名的空格,一键清理让文件名中的空格去无踪

我们每天都会创建、下载、重命名很多文件,在文件的重命名过程中,我们会不自觉地在文件名中加入空格,这些看似无害的空格,在某些情况下,却可能引发诸多不便。例如,在某些软件或操作系统中,空格可…

Mac M1 Parallels Debian10 Install Gitlab

安装Debian10 Debian10百度网盘下载链接: https://pan.baidu.com/s/1ovBWIhTpljIVOxEkjJQjkQ?pwd6666 提取码: 6666 –来自百度网盘超级会员v7的分享 # 1.install # 2.localtion: 中国 → 语言: 中文(简体) # 3.网络 默认、自动配置 # 4.主机名域名(随意…

【数据仓库与联机分析处理】数据仓库工具Hive

目录 一、Hive简介 (一)什么是Hive (二)优缺点 (三)Hive架构原理 (四)Hive 和数据库比较 二、MySQL的安装配置 三、Hive的安装配置 1、下载安装包 2、解压并改名 3、配置环…

多时点DID

标准 DID 模型一般针对政策实施时点为同一个时期,且接受干预的状态将一直持续下去,否则 的交互项设置将会严重违背平行趋势的假设,从而导致交互项的估计系数有偏。由于现实世界中很多的政策试点地区和时间都不尽相同,而且也容易发…

unity 游戏开发中傻傻分不清URP、HDRP和SRP

文章目录 **URP (Universal Render Pipeline)**:**HDRP (High Definition Render Pipeline)**:**区别**: Unity的URP(Universal Render Pipeline)和HDRP(High Definition Render Pipeline)都是基于SRP(Scri…

深入了解Snowflake雪花算法:分布式唯一ID生成器

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Mi…

go 切片长度与容量的区别

切片的声明 切片可以看成是数组的引用(实际上切片的底层数据结构确实是数组)。在 Go 中,每个数组的大小是固定的,不能随意改变大小,切片可以为数组提供动态增长和缩小的需求,但其本身并不存储任何数据。 …

安全测试之SSRF请求伪造

前言 SSRF漏洞是一种在未能获取服务器权限时,利用服务器漏洞,由攻击者构造请求,服务器端发起请求的安全漏洞,攻击者可以利用该漏洞诱使服务器端应用程序向攻击者选择的任意域发出HTTP请求。 很多Web应用都提供了从其他的服务器上…

Stable Diffusion 系列教程 - 6 Dreambooth及训练

Stable-Diffusion、Imagen等文生图大模型已经具备了强大的生成能力,假设我们的Prompt为 [Cyberpunk Style],SD或许能很快画出赛博朋克风格的一幅画。但你作为一个不知名的人,不能奢求SD在训练的时候把你自己想要的风格也加进去吧?…

『C++成长记』日期类的实现

🔥博客主页:小王又困了 📚系列专栏:C 🌟人之为学,不日近则日退 ❤️感谢大家点赞👍收藏⭐评论✍️ 目录 一、日期类的实现 📒1.1日期类功能 📒1.2拷贝日期 &#…

自动驾驶代客泊车PAVP功能规范

目录 1. 版本记录......................................................................................... 4 2. 引言................................................................................................ 5 2.1 目的/范围...............…

2023的线上事故复盘总结(OOM,数据库崩溃)持续更新中~

项目场景: 智慧门禁系统,公司研制的一个saas系统,基于Springcloud框架,主要是面向高校对老师学生的通行方式做统一的管理,可通过卡、码、脸等多种方式进出,可实现不同人员进出不同的场所,例如宿…

使用ChatGPT生成i项目需求文档模板

前言 我们在工作中需要编写的技术文档有多种形式,包括Word、Excel、PDF及一些在线形式。我们可以借助ChatGPT生成文本,然而,它不能直接生成Word、Excel、PDF等格式的文档。因此,我们需要利用其他工具来帮助我们生成一些模板&…

三、计算机理论-关系数据库-数据库的完整性与安全性,事务管理、并发控制、数据库的备份与恢复

数据库完整性 完整性是为了防止合法用户在使用数据库时向数据库中加入不符合语义的数据 实体完整性 实体完整性约束时通过主码的定义来实现的,使用PRIMARY KEY来定义,对于单个属性的主码可以使用列级完整性约束,若主码是一个属性组&#xff…

golang如何生成csv文件

在Go语言中,可以使用标准库中的"encoding/csv"包来生成CSV文件。下面是一个简单的示例代码,演示如何使用Go生成CSV文件: package mainimport ("encoding/csv""os" )func main() {// 创建一个新的CSV文件file,…

EtherCAT主站SOEM -- 14 --Qt-Soem通过界面采集从站IO进行显示

EtherCAT主站SOEM -- 14 --Qt-Soem通过界面采集从站IO进行显示 一 mainwindow.c 文件函数:1.1 自定义PDO配置1.2 主站初始化二 motrorcontrol.c 文件三 allvalue.h 文件该文档修改记录:总结一 mainwindow.c 文件函数: 1.1 自定义PDO配置 int IO_setup(uint16 slave) {int

YoloV7使用detect.py检测,结果图片不显示框

detect.py里画框部分默认是屏蔽的,需要自己打开。下图红框里屏蔽部分打开后,就显示框了。

QT上位机开发(日志调试)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 程序开发中有很多的调试方法,比如说IDE调试,也就是设置断点、查看变量等等;比如说日志调试;比如说c…

PDF控件Spire.PDF for .NET【安全】演示:获取并验证 PDF 中的数字签名

在 PDF 中创建数字签名广泛用于保护 PDF 文件。因此,当您查看一些带有数字签名的PDF文件时,需要获取并验证数字签名。本文向您展示了一种通过使用Spire.PDF和 C# 代码来获取和验证 PDF 中的数字签名的解决方案。 Spire.PDF for .NET 是一款独立 PDF 控件…