正规的网站制作在哪里,设计拓者吧官网,网站建设58,毕节公司做网站Java 已知Java系统编码是GBK#xff0c;jtextarea从一编码为Unicode的文本中读取数据#xff0c;出现乱码#xff0c;怎么正常显示#xff1f;关注:159 答案:2 mip版解决时间 2021-02-03 12:45提问者鉨瞞着所囿亾#xff0c;爱着誰2021-02-02 16:35我觉得jtextarea中读取…Java 已知Java系统编码是GBKjtextarea从一编码为Unicode的文本中读取数据出现乱码怎么正常显示关注:159 答案:2 mip版解决时间 2021-02-03 12:45提问者鉨瞞着所囿亾爱着誰2021-02-02 16:35我觉得jtextarea中读取Unicode文本是先以Unicode编码再以GBK解码而要想正常显示应该再先以GBK编码再以Unicode解码。不晓得对不对String codearray1System.getProperty(file.encoding); // Java系统编码try{String codetypecodeString(filePath); //检测获得原文本编码 filePath为文件路径codearray1codestr.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 bufrnew InputStreamReader(fis,Unicode);若将“Unicode”改为UTF-8、 UTF-16BE 、ASCII 、 GBK前面又乱了反倒乱码更严重。改为其他编码后效果求大神解答。。谢谢~~最佳答案二级知识专家轉角離身2021-02-02 17:55不用那么麻烦直接用InputStreamReader(FileInputStream fis,String code)这个函数来读取文本就可以了code就是这个文本的编码全部回答1楼烈酒℃灼言EL2021-02-02 19:01用String类的一个构造函数 它可以转换编码编码为Unicode的文本中直接给String再看看别人怎么说的。我要举报如以上问答内容为低俗/色情/暴力/不良/侵权的信息可以点下面链接进行举报我们会做出相应处理感谢你的支持→点此我要举报以上信息←推荐资讯大家都在看