java中unicode显示乱码_Java 已知Java系统编码是GBK,jtextarea从一编码为Unicode的文本中读取数据,出现乱码,怎么正常显示?...
Java 已知Java系统编码是GBK,jtextarea从一编码为Unicode的文本中读取数据,出现乱码,怎么正常显示?
关注:159 答案:2 mip版
解决时间 2021-02-03 12:45
提问者鉨瞞着所囿亾,爱着誰
2021-02-02 16:35
我觉得jtextarea中读取Unicode文本是先以Unicode编码,再以GBK解码,
而要想正常显示,应该再先以GBK编码,再以Unicode解码。不晓得对不对?
String codearray1=System.getProperty("file.encoding"); // Java系统编码
try{
String codetype=codeString(filePath); //检测获得原文本编码 filePath为文件路径
codearray1=codestr.getBytes(defaultcode); //以系统编码编码
ta.setText(new String(codearray1,codetype)); //以原文本编码解码
}catch(Exception e1){}
------------------------------------------------------------------- 网上的方法
private String codeString(String filePath) throws Exception{
BufferedInputStream bin = new BufferedInputStream(
new FileInputStream(filePath));
int p = (bin.read() << 8) + bin.read();
codetype = null;
switch (p) {
case 0xefbb:
codetype = "UTF-8";
break;
case 0xfffe:
codetype = "Unicode";
break;
case 0xfeff:
codetype = "UTF-16BE";
break;
case 0x5c75:
codetype = "ANSI|ASCII" ;
break;
default:
codetype = "GBK";
}
return codetype;
}
但仍然乱码:
操作前:
操作后:
按照“还是正能量”的方法,后面乱码了。。
我把code直接定为了Unicode,用的也是InputStreamReader(FileInputStream fis,String code)这个函数
-----------------------------------------------------------------------以下是代码
-------------------------------------------------------------------------实际效果
前面是可以了,但是后面还有很多方格。。。这要怎么做,不会要建一个方法,去掉后面的方格吧?但是如果编码对了,就应该不会有乱码了。。
要打开的文件确实是Unicode编码的,我也试了其他编码,
对 InputStreamReader bufr=new InputStreamReader(fis,"Unicode");
若将“Unicode”改为"UTF-8"、 "UTF-16BE" 、"ASCII" 、 "GBK"
前面又乱了,反倒乱码更严重。
改为其他编码后效果:
求大神解答。。谢谢~~
最佳答案
二级知识专家轉角離身
2021-02-02 17:55
不用那么麻烦,直接用InputStreamReader(FileInputStream fis,String code)这个函数来读取文本就可以了,code就是这个文本的编码
全部回答
1楼烈酒℃灼言EL
2021-02-02 19:01
用String类的一个构造函数, 它可以转换编码!
编码为Unicode的文本中直接给String
再看看别人怎么说的。
我要举报
如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
→点此我要举报以上信息!←
推荐资讯
大家都在看
java中unicode显示乱码_Java 已知Java系统编码是GBK,jtextarea从一编码为Unicode的文本中读取数据,出现乱码,怎么正常显示?...相关推荐
- java 月份起止时间_java已知时间的本周,本月,本年的起始时间
String --->LocalDateTime /LocalDate --->String/Long 有一些项目需要展示本日,本周,本月,本年的相关统计信息,这时就需要根据当前日期(或者 ...
- 用java求直角三角形的面积_JAVA 已知三角形的三个边判断 是否为直角三角形,如果是求面积!...
匿名用户 1级 2009-03-21 回答 你是要java的还是jsp的?给你个jsp的把... java的和jsp的差不多...主要还是那个求面积的公式 (1) (2) (3) (4) (5) 请输 ...
- java遍历两个日期_java 已知两个日期,遍历出两个日期之间所有的日期,重点是::包括第一个日期!!...
哈哈,又是日期类问题,那我肯定建议你用Java8的新时间API了,而且你时间字符串还是这种格式yyyy-MM-dd,直接LocalDate.parse方法就可以把字符串转化为LocalDate对象了 ...
- C语言试题五十一之已知学生的记录是由学号和学习成绩构成,n名学生的数据已存入s结构体数组中。请编写函数fun,该函数的功能是:找出成绩最高的学生记录,通过形参返回主函数(规定只有一个最高分)。
1. 题目 请编写一个函数void function(Student a[], int n, Student *s),其功能时:已知学生的记录是由学号和学习成绩构成,n名学生的数据已存入s结构体数组中 ...
- 在excel工作表中c1单元格_已知Excel工作表中A1单元格和B1单元格的值分别为“电子科技大学”、“信息中心”,要求在C1单元格显示“...
已知Excel工作表中A1单元格和B1单元格的值分别为"电子科技大学"."信息中心",要求在C1单元格显示" 更多相关问题 所谓犯罪现象的特性,是指为 ...
- Chemical Science | 通过异构网络中的深度学习对已知药物进行靶标识别
今天给大家介绍的是2020年1月在Chemical Science上发表的论文"Target identification among known drugs by deep learnin ...
- 算法分析:芯片测试问题 非递归 JAVA 有n片芯片,已知好芯片比坏芯片至少多1片......
[芯片测试]有n片芯片,已知好芯片比坏芯片至少多1片.现在需要通过测试从中找出1片好芯片,测试方法如下:将2片芯片放到测试台上,2片芯片互相测试并报告测试结果(即好或者坏):其中,好芯片的报告是正确的 ...
- c语言 已知某系统在通信联络中,数据结构(习题)..doc
数据结构(习题). 题1.1 数据结构在计算机内存中的表示是指---. A.数据的存储结构 B.数据元素 C.数据的逻辑结构 D.数据元素之间的关系 题1.2 从逻辑上可把数据结构分为--. A.动态 ...
- face_recognition小实战:显示未知图片中已知人物的脸
实验要求: 给一张已知的人脸(杨幂),让你在未知图片中找到杨幂,并且在那张未知图片中把杨幂的脸标记起来 思路: load_image_file方法加载已知图像和待检测图像 face_encodings ...
最新文章
- 关于定于如何弄的漂亮点
- windows 系统监视器 以及建议阀值
- LeetCode 1750. 删除字符串两端相同字符后的最短长度(双指针)
- webservice 原理
- 由“从按下回车到网页显示”粗谈网页优化
- Sentry的安装搭建与使用
- Excel表格转JPG等多种图片格式(简单粗暴)
- 【自动驾驶】Stanley(前轮反馈)实现轨迹跟踪
- 17 CoCos Creator-Node Tree 层级管理器
- 计算机用户名怎么注册,微软账号怎么注册 Microsoft帐户注册使用教程
- 计算机基础知识 SERVER
- java POI导出excel,导出的excel,打开文件提示文件格式或扩展名无效
- jQuery菜鸟学习实例
- python--生成器
- 胡阳pyhton作业题--20150725
- 《Web前端工程师修炼之道》学习笔记
- 中国大学MOOC胡浩基的机器学习第二章(支持向量机)兵王问题python版本——在python上初步使用libsvm
- Golang一日一库之 日志库 zap
- C++的count函数
- 知识点8--Docker镜像的秘密
热门文章
- 逻辑性最强的React Native环境搭建与调试
- Microsoft SQL Server 2005 提供了一些工具来监控数据库
- 中国计算机学会通讯杂志,何积丰. Cyber-physical systems [J]. 中国计算机学会通讯, 2010, 6(1): 25-29....
- mysql rpl_MySQL管理工具MySQL Utilities — mysqlrplcheck(44)
- python的语句_Python的语句
- 微软的OneNote正在获得类似Win11风格的外观
- vue-cli安装和使用
- hashcode、equals
- 计算机更新服务,使用 Microsoft Update 更新计算机
- python内置函数面向对象_Pyhton——面向对象进阶二:类的内置函数补充、描述符...