java 使用application/octet-stream下载文件时,返回的名称不是response.bin 就是 response.html
后来经过分析,应该是文件名称中文名原因,
最开始通过改编码为ISO-8859-1 后还是不行,返回文件名乱码 如:²âÊÔ²úÆ·.zip
使用utf-8编码结果 文件名 如 %20.zip这样
解决方法:
String zipName = "文件名.zip";
zipName = URLEncoder.encode(zipName,"UTF-8");//编译成utf-8格式 如 %E6%B5%8B%E8%AF%95%E4.zip
response.setHeader("Content-disposition", "attachment;filename="+zipName+";"+"filename*=utf-8''"+zipName); // **********
response.setContentType("application/octet-stream");
下载结果: