zoukankan      html  css  js  c++  java
  • 小程序API(1.11)利用wx.saveFile()、wx.getSavedFileList()、 wx.getSavedFileInfo() 和 wx.removeSavedFile() 操作文件的方法

    <!--pages/index.wxml-->
    <view class='box'>
      <view class='title'>文件操作</view>
      <image src='{{imgPath}}'></image>
      <view class='btnLayout'>
        <button type='primary' bindtap='openFile'>打开文件</button>
        <button type='primary' bindtap='saveFile'>保存文件</button>
      </view>
      <view class='btnLayout'>
        <button type='primary' bindtap='getSavedFileInfo'>文件信息</button>
        <button type='primary' bindtap='removedSavedFile'>删除文件</button>
      </view>
      <view class='fileInfo' hidden='{{hidden}}'><!--用来显示文件信息-->
        <text>{{msg}}</text>
      </view>
    </view>
    /* pages/index.wxss */
    
    page {
      text-align: center;/* 整个页面默认的组件的对齐方式是居中对齐 */
    }
    
    .btnLayout {
      /*设置按钮布局*/
      display: flex; /*设置布局类型*/
      flex-direction: row; /*设置布局方向*/
      justify-content: space-around; /*设置主轴方向控件的排列方式*/
    }
    
    button {
      width: 45%;
      margin: 5px;
    }
    
    .fileInfo {
      /*设置显示文件信息区域的样式*/
      margin: 10rpx 0; /*设置上下边距为10rpx,左右边距为0px*/
      background-color: #f8f8f8;
      text-align: left;
      border: 1px solid seagreen; /*设置边框线的宽度、线条类型和颜色*/
    }
    space-around:沿主轴方向控件的排列方式,水平方向排列的时候各个组件之类间隔相同,两边留有一定的空间
    // pages/index.js
    var tempFilePaths, tempFilePath; //定义存放所有临时文件和单个临时文件路径的全局变量
    Page({
      data: {
        msg: '', //初始化的变量,小程序运行时没有文件信息
        hidden: true //初始化的变量,小程序运行时隐藏文件信息显示区域
      },
      openFile: function() { //定义打开文件函数
        var that = this;//本函数涉及到回调函数,在回调函数中一般不能使用this直接调用相应的函数
        wx.chooseImage({ //打开图片文件
          success(res) {
            tempFilePaths = res.tempFilePaths //接口调用成功后,获取所有打开图片文件的路径
            console.log('打开文件路径:' + tempFilePaths)
            that.setData({
              imgPath: tempFilePaths[0], //显示打开的第一张图片
              hidden: false, //显示文件信息区域
              msg: '文件打开成功!' //显示文件操作信息
            })
          }
        })
      },
    
      saveFile: function() { //保存文件
        var that = this;
        wx.saveFile({ //调用保存文件的API函数,对象类型的参数
          tempFilePath: tempFilePaths[0], //获取打开的第1个文件路径
          success(res) { //将打开的第1个文件保存到res.savedFilePath
            console.log('保存文件路径:' + res.savedFilePath); //显示保存文件的路径
            that.setData({
              hidden: false, //显示文件操作信息
              msg: '文件保存成功!', //文件操作信息
            })
          }
        })
      },
      getSavedFileInfo: function() { //获取已经保存的文件信息
        var i, file; //局部变量,某一个文件,具体的文件
        var that = this;
        wx.getSavedFileList({ //获取所有已保存的文件
          success: function(res) { //将获取的所有文件赋值给res.fileList
            if (res.fileList.length == 0) { //如果没有保存的文件
              that.setData({
                hidden: false, //显示文件信息
                msg: '没有文件信息' //文件信息
              })
            } else {
              for (i = 0; i < res.fileList.length; i++) {
                file = res.fileList[i];
                console.log('第' + (i + 1) + '个文件路径:' + file.filePath)
                wx.getSavedFileInfo({ //获取已保存的文件信息
                  filePath: file.filePath,
                  success: function(res) { //将文件信息赋值给res
                    console.log('第' + i + '个文件大小为:' + res.size)
                    that.setData({
                      hidden: false, //显示文件信息
                      msg: '文件数量:' + i + '
    最后一个文件的大小:' + res.size +
                        '
    最后一个文件的创建时间:' + res.createTime
                    })
                  }
                })
              }
            }
          }
        })
      },
      removedSavedFile: function() { //删除文件
        var i, file;
        var that = this;
        wx.getSavedFileList({ //获取已保存文件的列表
          success: function(res) { //将所有文件赋值给res.fileList
            for (i = 0; i < res.fileList.length; i++) { //遍历文件列表
              file = res.fileList[i];
              wx.removeSavedFile({ //删除已经保存的文件
                filePath: file.filePath,
              })
              console.log('第' + (i + 1) + '个文件被删除!')
            }
            that.setData({
              hidden: false,
              msg: '文件被全部删除'
            })
          }
        })
      }
    })

    实现对文件的操作,包括打开、保存和删除文件,以及显示文件信息等内容

    API函数wx.saveFile(Object object)

    API函数wx.getSavedFileList(Object object)

    API函数wx.getSavedFileInfo(Object object)

    API函数wx.removeSavedFile(Object object)

    wx.saveFile(Object object) 用于将文件保存到本地,其参数主要属性如下:

    属性  说明
    tempFilePath 文件保存的临时路径 
    success 接口调用成功的回调函数
    fail 接口调用失败的回调函数
    complete 接口调用结束的回调函数 

          

    wx.getSavedFileList(Object object)用于获取该小程序已保存的本地缓存文件 列表,其参数属性包括:success、fail和complete, 其中success函数的参数属性fileList是文件数组类型。

    wx.getSavedFileInfo(Object object)用于获取本地文件信息。其参数属性包括: filePath和success等,filePath是文件路径,success 函数的参数属性包括:size和createTime。

    若要获取临时文件信息 , 请使用 wx.getFileInfo() 接口。

    wx.removeSavedFile(Object object)用于删除本地缓存文件,其参数属性包括: filePath 、 success 、 fail 和 complete , 其 中 filePath是要删除的文件路径。

  • 相关阅读:
    metasploit 教程之基本参数和扫描
    sql注入学习 sqlliab教程 lesson1 (sqlliab搭建教程)
    metasploit 教程之信息收集
    渗透.
    sqlmap基础入门超详细教程
    网络调试助手 全平台
    python3中的socket
    python3 udp版简单的聊天器
    提交表单外的数据方法
    centos7下端口映射
  • 原文地址:https://www.cnblogs.com/suitcases/p/14793564.html
Copyright © 2011-2022 走看看