MultipartFile上传至服务器,文件名称中文乱码问题
1.首先查看服务器是否设置为了zh_CN.UTF-8
输入命令:locale
不是则,进行查看服务器上是否有zh_CN.UTF-8
查看所有可以使用的字符编码集
输入命令:locale -a
如果没有可用的zh_CN.UTF-8
则进行安装:
CentOS命令:yum install kde-l10n-Chinese -y
ubuntu命令:sudo apt-get install language-pack-zh-hans
最后进行配置
命令:vi /etc/profile
在环境变量的最后一行里添加:
export LC_ALL="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
最后重启环境变量
命令:source /etc/profile
2.查看MultipartFile上传时有没有设置字符编码
multipartFile.transferTo(new File(new String(rootFilePath.getBytes(), "UTF-8")));
transferTo:是MultipartFile自带的方法,可已经文件上传到服务器;
rootFilePath:文件绝对路径,其中包含文件名称,可以在上传之前进行拼接;
或者使用hutool的FileUtil进行上传,代码如下
FileUtil.writeFromStream(multipartFile.getInputStream(), new String(rootFilePath.getBytes(), "UTF-8"));
补充:
hutool的FileUtil不仅有上传,也可以对文件进行删除,代码如下
FileUtil.del(path);
path:为文件或者目录的路径
来源地址:https://blog.csdn.net/m0_71817461/article/details/130771592
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341