微信小程序之文件系统初探
微信小程序之文件系统初探
1、文件下载
//下载文件
go_download: function() {
var content = this;
var baseUrl = "http://rwh.blob.core.chinacloudapi.cn";
var fileName = "1-e2b214af930149ee80c8142d067148a7.exam";
var url = baseUrl + "/data/ExamBuilder2.0/20190320" + "/" + fileName;
console.log("dowload url:" + url);
//用户缓存目录
var userLocalPath = wx.env.USER_DATA_PATH;
var localPath = "wxfile://";
var path = userLocalPath + "/" + fileName
var localPath = localPath + "/" + fileName
var authorization = "Basic ZThlYWJmNWMwN2I0NGI0YmEzOGJmZWMyMTJkM2U1ZDU=";
var apptoken = "Authorization"
const downloadTask = wx.downloadFile({
// 待下载的云资源
url: url,
//下载成功后的回调函数
success(res) {
console.log("dowload res.errMsg:" + res.errMsg);
console.log("dowload res.statusCode:" + res.statusCode);
console.log("dowload res.tempFilePath:" + res.tempFilePath);
if (res.statusCode === 200) {
wx.showToast({
title: '下载成功!'
})
}
},
//失败回调函数
fai: function(res) {
console.log("downloadFile fai:" + res.errMsg)
},
//完成回调函数
complete: function() {
console.log("downloadFile complete")
content.getReaddir(targPath)
}
})
downloadTask.onProgressUpdate((res) => {
console.log('下载进度', res.progress)
console.log('已经下载的数据长度', res.totalBytesWritten)
console.log('预期需要下载的数据总长度', res.totalBytesExpectedToWrite)
})
// downloadTask.abort() // 取消下载任务
}
2、持久化文件到本地
//下载成功的文件目前存在temp文件夹下,它属于临时文件
//如果想要将其持久化,需要使用wx.saveFile()将其保存至store文件夹下,
//在使用这个函数时,temp文件夹下的临时文件会被删除。
wx.saveFile({
tempFilePath: res.tempFilePath,
success: function(res) {
console.log(res);
var savedFilePath = res.savedFilePath;
console.log('文件已下载到' + savedFilePath);
}
})
3、解压压缩文件
//解压文件
unzipFile: function(path, targPath) {
var content = this;
console.log("unzip path:" + path)
console.log("unzip targPath:" + targPath)
wx.getFileSystemManager().unzip({
//文件路径
zipFilePath: path,
//目标文件夹
targetPath: targPath,
//成功回调函数
success: function(res) {
console.log(res.errMsg)
},
//失败回调函数
fai: function(res) {
console.log("unzip fai:" + res.errMsg)
},
//完成回调函数
complete: function() {
console.log("unzip complete")
content.getReaddir(targPath)
}
});
}
3、读取文件到内存
//读取文件
readFile: function(path) {
console.log("readFile start path:" + path)
var userLocalPath = wx.env.USER_DATA_PATH;
wx.getFileSystemManager().readFile({
//文件路径
filePath: path,
//成功回调函数
success: function(res) {
console.log("unzip success res:" + res.errMsg)
console.log(res)
},
//失败回调函数
fai: function(res) {
console.log("unzip fai:" + res.errMsg)
},
//完成回调函数
complete: function() {
console.log("unzip complete")
}
});
}
4、查看目标文件夹的文件列表
// 查看下载的文件列表
getReaddir: function(path) {
console.log("getReaddir start")
wx.getFileSystemManager().readdir({
dirPath: path,
//成功回调函数
success: function(res) {
console.log("getReaddir success res:" + res.errMsg)
console.log(res)
},
//失败回调函数
fai: function(res) {
console.log("getReaddir fai:" + res.errMsg)
},
//完成回调函数
complete: function() {
console.log("getReaddir complete")
}
})
}
5、查看已经缓存的文件列表
// 查看下载的文件列表
getUserSavedFileList: function() {
console.log("getUserSavedFileList start")
wx.getFileSystemManager().getSavedFileList({
//成功回调函数
success: function(res) {
console.log("getUserSavedFileList success res:" + res)
console.log(res)
},
//失败回调函数
fai: function(res) {
console.log("getUserSavedFileList fai:" + res.errMsg)
},
//完成回调函数
complete: function() {
console.log("getUserSavedFileList complete")
}
})
}
微信小程序之文件系统初探的更多相关文章
- 微信小程序开发之初探
本文是以一个简单的小例子,来简要讲解微信小程序开发步骤,希望促进学习分享. 概念 微信小程序,简称小程序,缩写xcx,英文mini program.是一种不需要下载安装即可使用的应用,它实现了应用“触 ...
- 微信小程序初探--写个扫雷分享给你玩
闲暇里,想学一下微信小程序, 于是,用微信小程序原生做了个扫雷玩. 以下略作总结,分享给大家. 微信里下拉,输入[mini计算器], 看到这个图标的就是了: 说好的扫雷,怎么变成计算器了?原因后面解释 ...
- 微信小程序初探
做为码农相信大家最近肯定都会听到微信小程序,虽然现阶段还没有正式开放注册,但大家可以还是可以开发测试. 到微信的WIKI(http://mp.weixin.qq.com/wiki?t=resource ...
- 微信小程序开发初探
一.关于微信小程序 1.1 小程序诞生的背景 张小龙说道: (1)一切以用户价值为依归→用户是微信的核心,所以微信中没有很多与客户无关的功能,比如QQ中的乱七八糟一系列东西. (2)让创造发挥价值→所 ...
- 初探微信小程序
摘要 最近闲下来了,就准备了解下微信小程序的内容.首先从目录结构开始吧. 创建项目 工具下载:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/do ...
- weapp微信小程序初探demo
https://github.com/donglegend/weapp-demo 参考文档开发工具安装微信weapp API git项目源码微信小程序 demo效果展示效果预览
- 微信小程序初探【类微信UI聊天简单实现】
微信小程序最近很火,火到什么程度,只要你一打开微信,就是它的身影,几乎你用的各个APP都可以在微信中找到它的复制版,另外官方自带的跳一跳更是将它推到了空前至高的位置.对比公众号,就我的感觉来说,有以下 ...
- 微信小程序之初探(常见语法 VS vue)常见问题(点击不生效,数据绑定)
最近在调研微信小程序开发,对于一个前端小白来说,在各种框架都还用不熟的情况下,再来开发小程序确实还是不容易. 小程序出来之初,听过演讲,看过一点点儿视频,感觉和angular语法有点相似(PS:那是也 ...
- 微信小程序初探(二、分页数据请求)
大家好 波哥小猿又来啦[斜眼笑],昨天咱们讲了微信小程序简单数据请求,有没有照着教程实现请求的同学们啦 实现的同学举个爪[笑脸].哈哈,好了不扯犊子啦,我相信有的同学已经实现了简单的数据请求,没有实现 ...
随机推荐
- sessionstorage中存储JSON数据
在web开发时,可能经常会用到sessionstorage存储数据,存储单个字符串数据变量时并不困难 var str = 'This is a string'; sessionstorage.setI ...
- Mysql被黑客入侵及安全措施总结
情况概述 今天登陆在腾讯云服务器上搭建的 MySQL 数据库,发现数据库被黑了,黑客提示十分明显. MySQL 中只剩下两个数据库,一个是information_schema,另一个是黑客创建的PLE ...
- Linux上用IP转发使内部网络连接互联网
IP转发的概念: 使 Linux 机器像路由器一样将数据从一个网络发送到另一个网络.所以,它能作为一个路由器或者代理服务器,实现将一个连接的互联网或者网络连接共享给多个客户端机器. 1. 启用 IPv ...
- openwrt_在PPPOE上网的同时_访问光猫
openwrt_在PPPOE上网的同时_访问光猫 转载注明来源: 本文链接 来自osnosn的博客,写于 2019-11-14. 参考文章: 光猫桥接模式下,通过路由器访问光猫.简单设置 设置Open ...
- 一文带你深入了解JVM性能调优以及对JVM调优的全面总结
目录 JVM调优 概念 基本垃圾回收算法 垃圾回收面临的问题 分代垃圾回收详述1 分代垃圾回收详述2 典型配置举例1 典型配置举例2 新一代的垃圾回收算法 调优方法 反思 一.JVM调优的一些概念 数 ...
- vue/cli 3 引入 使用jQuery
注意这里配置的是vue-cli3.0引入jquery的方法,不是vue-cli2.0的配置方法 一.安装jquery npm install jquery --save 二.一般安装成功后在packa ...
- 做了这么久的程序员,你知道为什么会有 Lambda 表达式吗?
Java8 有一些新的特性,今天老顾给大家分享一下关于 Lambda 表达式的由来,一开始感觉 Lambda 可读性蛮差的,不知道 为什么 Java8 会出来这个表达式?既然大佬们推出来,肯定是有原因 ...
- 爬虫(二):抓包工具Fiddler
1. 抓包工具Fiddler 1.1 Fiddler下载与安装 最简单的方法,打开百度,搜索fiddler下载. 下载完毕解压即可,此版本为绿色版. 点击这个即可运行抓包软件. 1.2 Fiddler ...
- JVM运行时数据区-详细结构图
- PHP命令执行漏洞初探
PHP命令执行漏洞初探 Mirror王宇阳 by PHP 命令执行 PHP提供如下函数用于执行外部应用程序:例如:system().shell_exec().exec().passthru() sys ...