Java读取linux系统中文文件名时候乱码,并显示文件不存在

Java读取linux系统中文文件名时候乱码,并显示文件不存在,第1张

我记得InputStreamReader和OutputStreamWriter不是可以设置编码的吗?

方式应该是:OutputStreamWriter writer = new OutputStreamWriter(fop, "UTF-8")

InputStreamReader reader = new InputStreamReader(fip, "UTF-8")

这样还乱码?那就二进制读取就行了。

记得保证整个编译环境编码统一。

Linux下读取文件名乱码可能的原因是:

1.linux系统默认编码不支持中文字符

2.文件名本身是乱码

解决方案是在读取文件名的时候,要进行显式的编码转换如下:

FileInputStream fis = new FileInputStream("fileName")

InputStreamReader isr = new InputStreamReader(fis,"utf-8")


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8892082.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-22
下一篇 2023-04-22

发表评论

登录后才能评论

评论列表(0条)

保存