Java和系统编码问题

Java使用UTF8,系统使用GBK

由于为了解决cmd乱码问题将系统编码设为了UTF8

cmd乱码解决了,结果java.exe仍然使用gbk报乱码

java.exe可以使用JAVA_TOOL_OPTIONS变量解决

但IOException中报的来自系统的消息却仍然是乱码

各位大佬知道这个怎么解决吗

不确定具体做什么,说说我的处理方法和思路,希望能给你点启发。

1、项目编码统一utf-8,配置propertis和jsp需要单独设置(eclipse下)

2、cmd 设置utf-8,编写bat脚本,头部添加chcp 65001,指定编码。

3、java参数指定utf-8,启动参数增加 -Dfile.encoding=UTF-8

4、读取文件指定utf-8,使用notepad++打开查看,确定为utf-8,

经过上面的方法应该就没问题了,实在不行,确认好读取文件编码,代码转换,这个不推荐,代码逻辑负担重,维护麻烦。