fileinputstream中文乱码(如何解决fileinputstream中文乱码问题?)

作者:百科火  更新 :2022-03-10 04:40:03   科技百科  

最佳答案FileInputStream读中文乱码是因为一个中文对应两个字节存储(负数),解决方法是在输出时进行判断,遍历数组判断负数的个数,如果是奇数,说明读取到中文的一半字节,对数组进行扩容再输出;否则正常输出。

fileinputstream中文乱码(如何解决fileinputstream中文乱码问题?)

如何解决fileinputstream中文乱码问题?让我们看看!

Java中使用 FileInputStream 读取txt在等待文档时,中文会产生代码混乱,因为一个中文对应于两个字节存储(负数),即读取相应中文的字节数应为偶数; 和英文对应于一个字节存储。FileInputStream每次读一个数组长度的字节,读的中文字节数可能是奇数,也就是只读中文字节的一半,有乱码。

解决方案如下:

try {

fis = new FileInputStream(file);

InputStreamReader reader = new InputStreamReader(fis,"GBK"); //最后"GBK"根据文件属性,如果没有,则改为"UTF-8"试试 BufferedReader br = new BufferedReader(reader); String line; while ((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我们知道中文乱码的问题。!

- END -

668代表什么意思(668可以解释为路路发、顺顺发的意思,表明财源滚滚、恭喜发财)

668代表什么意思(668可以解释为路路发、顺顺发的意思,表明财源滚滚、恭喜发财)

668可以解释为路路发、顺顺发的意思,表明财源滚滚、恭喜发财的含义,可以为好朋友或是爸爸妈妈送668的大红包,668也是...

花有重开日人无再少年出自哪首诗

花有重开日人无再少年出自哪首诗

中国拥有着五千年灿烂文化的文明大国。各种传统文化有着悠久的历史和深厚的文化底蕴。那么花有重开日人无再少年出...

地球上的水占地球百分之几

地球上的水占地球百分之几

水是生命的源泉水,是生命的源泉,是人类社会发展的基本物质条件。有 了水,我们的星球才有了蔚蓝;有了水,世界才有了...

美国正式独立的时间(美国独立时间是1776年7月4日)

美国正式独立的时间(美国独立时间是1776年7月4日)

美国正式独立的时间,1776年7月4日。美国正式独立的时间为1776年7月4日。1775年4月18日,独立战争爆发。1776年7月4日,大陆会议通过了由托马斯...

2100年是平年还是闰年(2100年是平年,不是闰年)

2100年是平年还是闰年(2100年是平年,不是闰年)

2100年是平年,不是闰年 。能被400整除或者能被4整除但不能被100整除。闰年是为了弥补因人为历法规定造成的年度天数...

一克大概是多少(一克大概是1枚2分硬币、1粒花生米、2颗黄豆、1个粉笔头、一)

一克大概是多少(一克大概是1枚2分硬币、1粒花生米、2颗黄豆、1个粉笔头、一)

一克大概是多少,一克大概是1枚2分硬币、1粒花生米、2颗黄豆、1个粉笔头、一个螺母等。一克的重量大约相当于一立方...

除法分配律公式(除法交换律口诀ABC=ACB,结合律)

除法分配律公式(除法交换律口诀ABC=ACB,结合律)

除法交换律口诀A÷B÷C=A÷C÷B,结合律口诀是A÷B÷C=A÷(B×C),分配律是A÷(B+C)=A÷B+A÷C。两个数的和除以一个数,可以...

美国洛杉矶是什么气候类型(美国洛杉矶最佳旅游时间)

美国洛杉矶是什么气候类型(美国洛杉矶最佳旅游时间)

洛杉矶属于温带地中海型气候,全年气候温和。大体上终年干燥少雨,只是在冬季降雨稍多。年降水量约378毫米,以冬雨为主...

一架民航客机多少钱(民航用的客机价格在5000)

一架民航客机多少钱(民航用的客机价格在5000)

民航用的客机价格在5000-24000万美元。客机广义即民用飞机。民用飞机是指一切非军事用途的飞机。民用飞机也称民航...

电脑鼠标卡顿不流畅是为什么(鼠标出现卡顿、不流畅的原因)

电脑鼠标卡顿不流畅是为什么(鼠标出现卡顿、不流畅的原因)

鼠标卡顿的原因可能与光标速度有关,可以在系统设置中更改鼠标的光标速度;鼠标光标跳跃式移动可能是系统问题,如中病毒...

查看更多知识百科