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