收藏
回答

微信小程序如何获取本地数据?

需求是本地有个文件,文件里有1w个号码,需要将号码输出至小程序的屏幕上。

我的思路是循环在wxml里输出data列表,data读取本地文件中的数据。

找了半天在论坛和百度里找不到data获取本地文件数据的方法,真诚求问

回答关注问题邀请回答
收藏

2 个回答

  • 跨商通
    跨商通
    03-25

    不支持。

    1、把文件放在云存储里,或者网络上,再下载下来才能读取

    2、wx.chooseMessageFile


    03-25
    有用
    回复 2
    • 溜啊溜
      溜啊溜
      03-27
      用 wx.getFileSystemManager().copyFile把文件复制到 wx.env.USER_DATA_PATH目录再读取不行吗
      03-27
      回复
    • 跨商通
      跨商通
      03-27回复溜啊溜
      不行。你没有试一下吗?
      03-27
      回复
  • eagle
    eagle
    03-25

    https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.readFile.html这个api不可以吗?

    03-25
    有用
    回复 2
    • 溜啊溜
      溜啊溜
      03-27
      这个直接读取没用,我查了下微信小程序只有特定的文件目录允许用户读写 wx.env.USER_DATA_PATH +'目录'




      function fileRead(){
        wx.getFileSystemManager().copyFile({ //先把文件复制到可操作的文件夹
          srcPath: '../data.txt'//源文件
          destPath: wx.env.USER_DATA_PATH +'/data.txt' //可操作的文件夹路径
          success: res => {
            console.log(res) //复制成功返回res信息
          },
          fail: console.error //复制失败返回error
        }),
        wx.getFileSystemManager().readFile({ //读取文件
          filePath: wx.env.USER_DATA_PATH +'/datae.txt',
          encoding: 'utf-8',
          success: res => {
            var data = res.data.toString
            this.setData({
              fileData:data
            })
            console.log(this.data)
          },
          fail: console.error
        })


      但是现在的问题是根目录里明明有data.txt,小程序却报错copyFile:fail no such file or directory, copyFile "../data.txt
      03-27
      回复
    • eagle
      eagle
      04-01
      你这个文件能不能通过后台下载为临时文件,再进行读取处理
      04-01
      回复
登录 后发表内容
问题标签