小程序
小游戏
企业微信
微信支付
扫描小程序码分享
使用 wx.downloadFile + wx.openDocument 方法后可以打开pdf文件,但安卓显示乱码名,苹果显示文件预览很不好看,请问有什么办法可以显示自定义名吗
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
可以尝试下载后改名,再打开:https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.rename.html
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
wx.downloadFile({
url: res.currentTarget.dataset.current,
filePath:wx.env.USER_DATA_PATH+'/要改的名字.后缀',
success: function (res) {
const filePath = res.filePath
wx.openDocument({
filePath: filePath,
showMenu:true,
console.log('打开文档成功')
}
})
最后的解决方案是(安卓可用,苹果不显示文件名)
let fs = wx.getFileSystemManager() wx.showLoading({ title: '加载中', }) wx.downloadFile({ url: 'https://.../fitness-tips.pdf', filePath: wx.env.USER_DATA_PATH + `/tem.pdf`, success: function(res) { if (res.statusCode === 200) { let filePath = res.tempFilePath; fs.rename({ oldPath: wx.env.USER_DATA_PATH + `/tem.pdf`, newPath: wx.env.USER_DATA_PATH + `/fitness-tips.pdf`, success: function(res) { //存诸文件名为我们清除缓存(本地用户文件最多10M,因此需要解决,避免占用存诸) let delectFile = wx.getStorageSync('filePath', delectFile) ? wx.getStorageSync('filePath', delectFile) : []; delectFile = [...delectFile, wx.env.USER_DATA_PATH + `/fitness-tips.pdf`] wx.setStorageSync('filePath', delectFile) //打开文档 wx.openDocument({ filePath: wx.env.USER_DATA_PATH + `/fitness-tips.pdf`, success: function(res) { wx.hideLoading(); console.log('打开文档成功') }, fail: function(res) { wx.showToast({ title: 'fail', icon: 'none' }) } }) }, fail: function(res) { wx.showToast({ title: '文件重命名失败', icon: 'none' }) } }) } }, fail: function(res) { console.log('fail') console.log(res) }, })
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
可以尝试下载后改名,再打开:https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.rename.html
wx.downloadFile({
url: res.currentTarget.dataset.current,
filePath:wx.env.USER_DATA_PATH+'/要改的名字.后缀',
success: function (res) {
const filePath = res.filePath
wx.openDocument({
filePath: filePath,
showMenu:true,
success: function (res) {
console.log('打开文档成功')
}
})
}
})
最后的解决方案是(安卓可用,苹果不显示文件名)
let fs = wx.getFileSystemManager() wx.showLoading({ title: '加载中', }) wx.downloadFile({ url: 'https://.../fitness-tips.pdf', filePath: wx.env.USER_DATA_PATH + `/tem.pdf`, success: function(res) { if (res.statusCode === 200) { let filePath = res.tempFilePath; fs.rename({ oldPath: wx.env.USER_DATA_PATH + `/tem.pdf`, newPath: wx.env.USER_DATA_PATH + `/fitness-tips.pdf`, success: function(res) { //存诸文件名为我们清除缓存(本地用户文件最多10M,因此需要解决,避免占用存诸) let delectFile = wx.getStorageSync('filePath', delectFile) ? wx.getStorageSync('filePath', delectFile) : []; delectFile = [...delectFile, wx.env.USER_DATA_PATH + `/fitness-tips.pdf`] wx.setStorageSync('filePath', delectFile) //打开文档 wx.openDocument({ filePath: wx.env.USER_DATA_PATH + `/fitness-tips.pdf`, success: function(res) { wx.hideLoading(); console.log('打开文档成功') }, fail: function(res) { wx.showToast({ title: 'fail', icon: 'none' }) } }) }, fail: function(res) { wx.showToast({ title: '文件重命名失败', icon: 'none' }) } }) } }, fail: function(res) { console.log('fail') console.log(res) }, })