1.检测是否为乱码

public static booleanisMessyCode(String strName) {

Pattern p= Pattern.compile("\\s*|\t*|\r*|\n*");

Matcher m=p.matcher(strName);

String after= m.replaceAll("");

String temp= after.replaceAll("\\p{P}", "");char[] ch =temp.trim().toCharArray();float chLength = 0;float count = 0;for (int i = 0; i < ch.length; i++) {char c =ch[i];if (!Character.isLetterOrDigit(c)) {if (!isChinese(c)) {

count= count + 1;

}

chLength++;

}

}float result = count /chLength ;if (result > 0.4) {return true;

}else{return false;

}

}

2.检查字符是否为中文

private static boolean isChinese(charc) {

Character.UnicodeBlock ub=Character.UnicodeBlock.of(c);if (ub ==Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS|| ub ==Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS|| ub ==Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A|| ub ==Character.UnicodeBlock.GENERAL_PUNCTUATION|| ub ==Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION|| ub ==Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {return true;

}return false;

}

3.中文转换编码

public staticString toChinese(String msg){if(isMessyCode(msg)){try{return new String(msg.getBytes("ISO8859-1"), "UTF-8");

}catch(Exception e) {

}

}returnmsg ;

}

Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS : 4E00-9FBF:CJK 统一表意符号

Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS :F900-FAFF:CJK

兼容象形文字 Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A

:3400-4DBF:CJK 统一表意符号扩展 A

CJK的意思是“Chinese,Japanese,Korea”的简写 ,实际上就是指中日韩三国的象形文字的Unicode编码

Character.UnicodeBlock.GENERAL_PUNCTUATION :2000-206F:常用标点

Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION :3000-303F:CJK 符号和标点

Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS :FF00-FFEF:半角及全角形式

Character.isLetter(c):判断字符是否是字母

Character.isDigit(c):判断字符是否是数字

java判断字符串是中文乱码_java 检测字符串中文乱码相关推荐

  1. java 判断字符 不等于 或者_java中字符串不等于怎么判断

    java中字符串不等于可以使用equals()方法判断,equals()方法用于将字符串与指定的对象比较. 语法public boolean equals(Object anObject) 参数 an ...

  2. java 判断端口是否被占用_java检测端口是否被占用详解

    Java可以通过Socket类来检测端口是否被占用: import java.net.*; import java.io.*; public class Main { public static vo ...

  3. 中文拼写纠错_word-checker: Chinese and English word spelling corrector.(中文易错别字检测,中文拼写检测纠正。英文单词拼写校验工具)...

    项目简介 本项目用于单词拼写检查. 目前支持英文单词拼写检测,后期将引入中文拼写检测. 特性说明 支持英文的单词纠错 可以迅速判断当前单词是否拼写错误 可以返回最佳匹配结果 可以返回纠正匹配列表,支持 ...

  4. java 锟斤 解决乱码_java eclipse 开发中文乱码锟斤拷小锟斤拷锟

    最近在做项目的时候发现有些员工提交的代码到SVN上之后乱码了,eclipse没有乱码,乱码字样为"锟斤拷小锟斤拷锟斤拷植锟斤拷锟斤拷3146锟斤拷锟斤拷锟斤拷锟绞撅拷锟绞硷拷锟揭筹拷锟?&q ...

  5. inputstream流乱码_Java FileInputStream读中文乱码问题解决方案

    1.前提 以读取编码是GBK的文件为案例,文件内容只有中文和中文符号 2.原因 FileInputStream读中文乱码是因为一个中文对应两个字节存储(负数),也就是说,读取对应中文的字节数应该是偶数 ...

  6. java中String类是什么_Java中字符串的学习(一)String类的概述及常见方法使用

    转载请注明出处http://www.cnblogs.com/devtrees/p/4347079.html (拓展:Api:编程语言对外给我们提供的应用程序接口.) 一.概述: 我们平时上网发帖,帖子 ...

  7. java判断integer是否为空_java安全编码指南之:表达式规则

    简介 在java编写过程中,我们会使用到各种各样的表达式,在使用表达式的过程中,有哪些安全问题需要我们注意的呢?一起来看看吧. 注意表达式的返回值 我们在使用JDK库的时候,一定要注意认真的读一下JD ...

  8. java 数据写入txt乱码_java写入文件是乱码

    java写入文件是乱码 我们读取.写入文件流时,经常会遇到乱码的现象,造成乱码的原因当然不可能是一个,这里主要介绍因为文件编码格式而导致的乱码的问题.首先,明确一点,文本文件与二进制文件的概念与差异. ...

  9. java 比较字符串前几位_java截取字符串前几位

    java截取字符串_IT/计算机_专业资料.java截取字符串 1根据字符串 S... java中常用的字符串的截取方法_计算机软件及应用_IT/计算机_专业资料.jsp中常见使用技术,js,jstl ...

最新文章

  1. 2018 蓝桥杯省赛 B 组模拟赛(一)-年龄
  2. 我的LDAP使用手记(Fedora-ds) 备忘用
  3. 解决忘记oracle管理员密码(转)
  4. 移动APP的开发迭代离不开测试,你搞清楚其中的关键点了吗?
  5. POJ - 3263 Tallest Cow(简单差分)
  6. eazyui ajax传值,jquery easyui ajax data属性传值方式
  7. Flutter实战一Flutter聊天应用(七)
  8. html横向滚动效果,html 中 鼠标滑轮实现横向滚动
  9. 介绍一个软件开发工具,堪称快速开发神器
  10. 【安装配置Git】最新版Git安装教程
  11. Xilinx ZynqMP相关
  12. pytorch用多层感知机实现鸢尾花3分类(亲测可用)
  13. 11.18C语言练习题
  14. Vue代码中如何开启调试模式
  15. 性能测试工具Locust和JMeter比较
  16. php推送示例mip,WordPress文章页如何自动推送提交MIP/AMP页面 | 小灰灰博客
  17. 解决“WARN: Establishing SSL connection without server‘s identity verification is not recommended.”问题
  18. 获取Android手机总内存和可用内存最佳方案
  19. QT学习笔记(三)——vs2019+Qt实现打开影像并以鼠标为中心用滚轮控制图片缩放
  20. 神经网络家族为何 BP 网络一枝独秀?谁能谈谈神经网络家族的兴衰史?

热门文章

  1. 中了 usp10.dll 猫癣(犇牛)病毒! 简易解的决方案!
  2. 不删除配置的情况下修改路由器密码
  3. UnderscoreJS精巧而强大工具包
  4. 简单记录Java的AES128加密和解密
  5. java云同桌学习系列(七)——集合
  6. HCIA/HCIP使用eNSP模拟HCIA综合实验(Telnet Trunk VLAN DHCP STP OSPF PPP 缺省路由 NAT ACL 与 路由器 交换机 服务器的综合配置)
  7. java-php-python-ssm医疗大数据系统计算机毕业设计
  8. nodejs ftp文件服务器,NodeJS 连接FTP服务器
  9. php 停止运行下面脚本,php如何停止脚本运行
  10. codesfot6批量打印,双排,斑马GT820打印机