在用Java编程的过程中遇到一个非常奇怪的问题,折腾了一两天,现在终于解决。
之前老是出现“馄斤拷”这样的乱码,从文件中读取来的字符,英文显示正常,而一遇到中文,全部乱码。
要不出现乱码,必须做扎实这么几条:
1. 读入的文件编码一定要清楚,要设置必须准确设定,比如UTF-8就是UTF-8,不能确定文件编码时,用工具比如NOTEPAD++把文件打开,然后选择指定编码保存一遍。我之前其实程序已经没有问题,但是由于误认为要读取的文件已经是UTF-8,其实不是,所以实验许多遍都失败了,关键就是这一步没有做好。
2. 在程序中写好这样的代码:
InputStreamReader isr=new InputStreamReader(fis,"UTF-8");
这样文件输入流读取时就遵照UTF-8编码进行读入,如果