fileinputstream中文乱码

天下奇闻 2023-03-27 20:53www.nkfx.cn天下奇闻

如何解决fileinputstream中文乱码问题?一起了解一下吧!

Java中使用 FileInputStream 读取txt等文档时,中文会产生乱码,这是因为一个中文对应两个字节存储(负数),也就是说,读取对应中文的字节数应该是偶数; 而英文对应一个字节存储。FileInputStream每次读取一个数组长度的字节时,读取的中文字节数可能是奇数,也就是只读到中文的一半字节,出现乱码。

解决方法是

try {

            fis = ne FileInputStream(file);

            InputStreamReader reader = ne InputStreamReader(fis,"GBK"); //的"GBK"根据文件属性而定,如果不行,改成"UTF-8"试试 BufferedReader br = ne BufferedReader(reader); String line; hile ((line = br.readLine()) != null) { System.out.println(line); } br.close(); reader.close(); } catch (Exception e) { e.printStackTrace(); } finally { if (fis != null) { try { fis.close(); } catch (IOException e) { e.printStackTrace(); } } }

关于解决fileinputstream中文乱码问题,我们就了解到这啦!

Copyright © 2016-2025 www.nkfx.cn 趣谈网 版权所有 Power by