可执行Jar读取文件乱码

写了一个读取文本文件(UTF-8编码)的类,其中使用
BufferedReader in = new BufferedReader(new FileReader(file));
进行文件读取,在Eclipse中运行时没有中文乱码现象,但由Eclipse导出为可执行Jar后读取文件出现乱码,请问是什么原因?

5个回答

或者:
查看Console的字符集编码: 右键 CMD的对话框标题栏,查看属性中的option -> current code page

修改注册表:
[HKEY_CURRENT_USER/Console/%SystemRoot%_system32_cmd.exe] "CodePage"=dword:000003a8

修改code为932-->日语,936-->中文GBK

你得系统编码应该是gbk的吧 你只是把eclipse里面的编码改为utf-8了

控制面板--〉区域和语言就可以设置系统编码
cmd的左上角菜单中有一个默认值选项 也可以修改编码

恩呢 但是没法子呀 呵呵

可能和eclispe本身设置的编码有关系,导出成jar之后,FileReader采用的是操作系统默认的字符编码

应该这样搞

BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file), "utf-8"));

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐