问题描述
linux的locale已经是utf-8和zh_CN,JAVA程序中也设置locale为SIMPLIFIED_CHINESE并且在启动程序时候已经添加命令-Dfile.encoding="UTF-8"-Duser.country="CN"-Dsun.jnu.encoding="UTF-8"-Duser.language="zh",代码中所有编码都为utf-8,而且newString的时候都是以utf-8new的,但是仍然文件名乱码
解决方案
解决方案二:
如果是显示乱码,可能和终端工具有关,调一下终端工具的编码格式。
解决方案三:
引用1楼oh_Maxy的回复:
如果是显示乱码,可能和终端工具有关,调一下终端工具的编码格式。
不是,是保存在服务器上乱码的
解决方案四:
引用1楼oh_Maxy的回复:
如果是显示乱码,可能和终端工具有关,调一下终端工具的编码格式。
而且只有文件名是乱码的,内容还不是,用out=newFileOutputStream(filename)直接将二进制数据写进文件,这时候我打印的filename还不是乱码,然后保存在一个文件路径下,再通过Filef=newFile(filePath);File[]files=f.listFiles();来取得时候,文件名就是乱码的了
解决方案五:
直接在服务器里创建中文名称的文件呢?另外,把乱码名称的文件再下载到本地,文件名还乱不?
解决方案六:
能不能发个图,变成什么样子的乱码了?还有原文件名应该是什么。可能有助于乱码的判断
解决方案七:
你的服务器支持中文不
解决方案八:
都是????这种乱码
解决方案九:
先要看看你的服务器能不能支持中文,因为有可能安装linux的时候没有安装中文语言包
时间: 2024-08-19 19:58:08