FileOutPutStream读取服务器上的Excel文件下载时文件名称只有.xls[1]

修改前代码

修改后代码

FileOutPutStream读取服务器上的Excel文件下载时文件名称只有.xls[1]_第1张图片

原因是穿过来的fileName 是中文,而http header头要求其内容必须为iso8859-1编码。

如 
String s_iso88591 = new String("海".getBytes("UTF-8"),"ISO8859-1"), 

这样得到的s_iso8859-1字符串实际是三个在 ISO8859-1中的字符,在将这些字符传递到目的地后, 

目的地程序再通过相反的方式String s_utf8 = new String(s_iso88591.getBytes("ISO8859-1"),"UTF-8")来得到正确的中文汉字“海”

如果直接传中文在转译的过程中会出现后缀为.xls[1]这种情况

你可能感兴趣的:(java,异常)