微信小程序下载Excel到本地

微信开放文档提供了 API 下载文件  wx.downloadFile  wx.saveFile

downloadFile 其实是将文件下载下来,放到了一个临时空间,success 返回文件的本地临时路径

但是这个临时路径其实是微信沙盒的路径,并不是手机本地的路径。

saveFile 开发文档写的是保存文件到本地,我以为是保存到手机,其实是我想多了,打印了一下地址。

 downloadFile 和 saveFile 调用成功后返回的地址都是以  wxfile:// 开头的,感觉这个是微信自己的内部存储空间。(但其实android是可以查询到的:内部存储/Android/data/com.tencent.mm/MicroMsg/wxanewfiles/***/文件名 ,中间那个***是个长的字符串,不知道什么规则生成的;ios是无法查询到具体的文件) 

回头看看,需求是下载Excel文件,到本地,怎么实现呢

查询了好多社区文档,看到大家都遇到了这个问题,各种骚方案,如下:

https://developers.weixin.qq.com/community/develop/doc/000aa09ca30a9031462990b3b51000

我结合需求想了一个中间方案:(其实下载文件也就是想要发送给朋友)

// 将下载文件的地址粘贴到剪贴板,提示用户去手动下载
 Taro.setClipboardData({
        data: url,
        success: function (res) {
          Taro.showToast({
            title: '下载地址已粘贴到剪贴板,请前往浏览器下载!',
            icon: 'none',
            duration: 2000,
          });
        }
      })
//通过wx.openDocument 打开文档,openDocument 提供了一个属性showMenu 显示右上角的菜单
wx.downloadFile({
          url: url,
          success (res) {
            if (res.statusCode === 200) {
              const filePath = res.tempFilePath;
              wx.openDocument({
                filePath: filePath,
                showMenu: true,
                success: function (res) {
                  console.log(res, '打开文档成功');
                }
              });
            }
          }
        })

 最后发现右上角的菜单有分享朋友的功能

              

 用户可以通过分享发送给朋友,也可以通过剪切板的内容到浏览器中手动下载文件。

 

 

 

 

 

 

 

  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
微信小程序中导出Excel文件有几种方法。一种方法是使用服务器来生成Excel文件,然后将文件链接返回给客户端。这可以通过云函数来实现,首先读取数据并生成Excel文件,然后将文件上传到云存储,并将文件链接返回给客户端。这种方法需要有服务器来支持,并且需要安装相关的包。\[3\] 另一种方法是在客户端本地生成Excel文件。Excel文件本身是一个压缩文件,可以通过创建Excel的目录结构,逐个文件和文件夹创建,然后将文件压缩为.xlsx文件。这种方法不需要服务器支持,但是生成效率可能较低。\[2\] 根据你的需求,你可以选择适合你的方法来实现微信小程序导出Excel文件。 #### 引用[.reference_title] - *1* *2* [微信小程序生成Excel](https://blog.csdn.net/ZackSock/article/details/125980913)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [微信小程序导入导出到excel](https://blog.csdn.net/countsun/article/details/124073292)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值