请问这种乱码如何处理,ByteArrayResource

(亚洲城官网【亚洲知名平台】)

我有这样一段上传文件的代码:

ByteArrayResource byteArrayResource = new ByteArrayResource multipartFile.getBytes { @Override public String getFilename { return multipartFile.getOriginalFilename; };
};

到我把文件上传到另外一层去的时候,也是用MultipartFile来接收文件的,但file.getOriginalFilename中文输出的是???这样的乱码?请问怎么破?ByteArrayResource中文乱那么,怎么破?

问题不是出在 MultipartFile 上,而是出在项目配置上。一般来讲避免乱码只要下面两步:

1、配置 Tomcat 的 URIEncoding 参数,参考
2、鉴于你用了 SpringMVC 框架,建议在 web.xml 中添加 CharacterEncodingFilter,该 Filter 的用法很容易搜到。

只要做到上面两步,并且配置为相同的编码(强烈建议用 UTF-8),就不需要为任何编码问题头疼了。

保证前后的编码格式一致,如果通过String获取byte数组时要添加编码格式,另保证数据库或者控制台的编码一致。

发表评论

电子邮件地址不会被公开。 必填项已用*标注