1***@qq.com
1***@qq.com
  • 发布:2023-03-01 11:51
  • 更新:2023-03-01 11:51
  • 阅读:730

uni.downloadFile下载文件名中文编码问题

分类:uni-app

uni.downloadFile下载文件名中文在安卓端没问题,到了iOS端就会中文文件名乱码问题。在下载文件时是以流的形式进行下载,在设置设置流的文件名时就得在https 的响应头里加上文件的名称response.setHeader("Content-Disposition", "inline; filename=文件名称" ,但是由于在http响应头里变的会出现中文编码问题。所以要求对中文编码处理,如下两种方式都可以:
response.setHeader("Content-Disposition", "inline; filename=" + URLEncoder.encode(name, StandardCharsets.UTF_8.toString()));

response.setHeader("Content-Disposition", "inline; filename=" + new String(f.getName().getBytes("utf-8"),"ISO8859-1"));

但是,ISO中这两种方式都是不行的。实际上是浏览器能处理上面这两种编码方式。这种情况怎么解决ISO端文件名乱码问题?

2023-03-01 11:51 负责人:无 分享
已邀请:

要回复问题请先登录注册