Java判断字符串是否含有乱码实例代码

具体代码如下所示:

/**
  * 判断字符是否是中文
  *
  * @param c 字符
  * @return 是否是中文
  */
 public static boolean isChinese(char c) {
  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;
 }
 /**
  * 判断字符串是否是乱码
  *
  * @param strName 字符串
  * @return 是否是乱码
  */
 public static boolean isMessyCode(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 = ch.length;
  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;
    }
   }
  }
  float result = count / chLength;
  if (result > 0.4) {
   return true;
  } else {
   return false;
  }
 }
 public static void main(String[] args) {
  System.out.println(isMessyCode("韩顺平"));
  System.out.println(isMessyCode("你好"));
 }

总结

以上所述是小编给大家介绍的Java判断字符串是否含有乱码实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • Java中字符数组和字符串与StringBuilder和字符串转换的讲解

    1.字符串->字符数组: String str = "abc": char[] a = str.toCharArray(); 记忆:字符串是个类,所以用内建函数 延伸: char b = str.charAt(1); str.length(); a.length; 2.字符数组->字符串: String str = String.valueOf(a): 记忆:类似强制类型转换格式,String(a) 延伸:字符转字符类 Character c = Character.val

  • Java中字符串常见题之String相关讲解

    今天给大家带来的是在面试中经常被问到的一道题: 无论在Java还是Android中,String是一个很常见的类,但是大家真的很了解吗,我这里有几个题: 1. String str1 = "abc"; String str2 = new String("abc"); 这两种创建String对象的方法有什么不同? 2. String s = "a" + "b" + "c" + "d"; 这

  • Java实现Json字符串与Object对象相互转换的方式总结

    本文实例总结了Java实现Json字符串与Object对象相互转换的方式.分享给大家供大家参考,具体如下: Json-Lib.Org.Json.Jackson.Gson.FastJson五种方式转换json类型 只列举了最省事的方式.不涉及复制情况和速度. 测试用例,一个User类,属性name,age,location.重写toString(). public class User { private String name; private Integer age; private Stri

  • java字符串的重要使用方法以及实例

    1.返回String"长度"方法 你如何确定给定String的长度?java提供了一种称为"length()"的方法.将它用于您需要查找String的长度. public class Str_Sample { public static void main(String[] args){ //测试String长度的方法 String name="hello work"; //length方法返回的是整数 int num=name.length()

  • java转换字符串编码格式的方法

    java转换字符串编码格式 (解码错误,重新解码) 字符集概念:规定了某个文字对应的二进制数字存放方式(编码)和某串二进制数值代表了哪个文字(解码)的转换关系. 我们在计算机屏幕上看到的是实体化的文字,而在计算机存储介质中存放的实际是二进制的比特流. 乱码场景(纯属瞎掰): 1) 前台输入utf-8编码的一串汉字(string1). (页面编码为utf-8, 在内存中会将这串汉字以utf-8编码为对应的二进制流存储) 2) 这串汉字(string1)的二进制流在经过http协议传输到后台时,这段

  • Java 中运行字符串表达式的方法

    在日常的开发中,偶尔会遇到运行字符串表达式的情况,通常这样的需求会对需求进行进一步分析,然后进行进一步 "特殊化",最后直接写到硬代码中,这样做的话,就不太好扩展了:也有另外的处理方式是采用 Java 内置的 JavaScript 引擎等运行字符串表达式,但是内置引擎也有弊端,比如频繁运行片段式的字符串的效率非常低,并且与 Java 之间的数据交互比较麻烦,于是,便产生了写一个"字符串表达式计算引擎"的想法... 写的过程其实没想象中那么麻烦,最初版大概在今年 5

  • Java判断字符串是否含有乱码实例代码

    具体代码如下所示: /** * 判断字符是否是中文 * * @param c 字符 * @return 是否是中文 */ public static boolean isChinese(char c) { Character.UnicodeBlock ub = Character.UnicodeBlock.of(c); if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS || ub == Character.UnicodeBlock.C

  • java判断各类型字符个数实例代码

    目录 描述 输入描述: 输出描述: 描述 输入一行字符串,分别统计出其中英文字母.空格.数字和其它字符的个数 输入描述: 控制台随机输入一串字符串 输出描述: 输出字符串中包含的英文字母个数,数字个数,空格个数,其它字符个数(格式为:英文字母x数字x空格x其他x),预设代码中已给出输出. import java.util.Scanner; public class Main { public static void main(String[] args) { int numbers = 0; i

  • java判断字符串是正整数的实例

    实例如下所示: public static boolean isPureDigital(String string) { if (isBlank(string)) return false; String regEx1 = "\\d+"; Pattern p; Matcher m; p = Pattern.compile(regEx1); m = p.matcher(string); if (m.matches()) return true; else return false; }

  • Java 分割字符串详解及实例代码

     Java 分割字符串 java.lang.String 的 split() 方法, JDK 1.4 or later public String[] split(String regex,int limit) 示例代码 public class StringSplit { public static void main(String[] args) { String sourceStr = "1,2,3,4,5"; String[] sourceStrArray = sourceSt

  • Java判断字符串回文的代码实例

    首先,回文是指类似于"12345","abcdcba"的形式,即正念和反念都是一样的字符串 判断字符串是否是回文,这边介绍2种办法 1.将字符串翻转,判断翻转后的字符串和原字符串是否相等 public static void main(String[] args) { String s="abcdcba"; // 用StringBuilder的reverse方法将字符串反转 StringBuilder sb=new StringBuilder(s

  • Java 判断字符串中是否包含中文的实例详解

    Java 判断字符串中是否包含中文的实例详解 Java判断一个字符串是否有中文是利用Unicode编码来判断,因为中文的编码区间为:0x4e00--0x9fbb, 不过通用区间来判断中文也不非常精确,因为有些中文的标点符号利用区间判断会得到错误的结果.而且利用区间判断中文效率也并不高,例如:str.substring(i, i + 1).matches("[\\一-\\?]+"),就需要遍历整个字符串,如果字符串太长效率非常低,而且判断标点还会错误.这里提高 一个高效准确的判断方法,使

  • Java判断主机是否能ping通代码实例

    这篇文章主要介绍了Java判断主机是否能ping通代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码实现如下: import java.io.IOException; import java.net.InetAddress; import java.net.UnknownHostException; /** * Created by Miracle Luna on 2019/12/10 */ public class PingUtil

  • java date类与string类实例代码分享

    Date类用来指定日期和时间,其构造函数及常用方法如下: publicDate() 从当前时间构造日期时间对象. publicStringtoString() 转换成字符串. publiclonggetTime() 返回自新世纪以来的毫秒数,可以用于时间计算. [例3.10]测试执行循环花费的时间(数量级为毫秒),具体时间情况如图3.9所示.源程序代码如下: //程序文件名为UseDate.java import java.util.Date; public class UseDate { pu

  • 你知道Java判断字符串是否为数字的多种方式吗

    目录 前言 异常处理 正则表达式 使用NumberFormat 数字字符 外部工具类 1.NumberUtils.isParsable 2.NumberUtils.isCreatable 3.StringUtils.isNumeric 4.StringUtils.isNumericSpace 测试并比较 1)null或者空字符串 2)常规的数字,整数,浮点数以及负数 3)包含非法的字符,例如包含多余的小数点,包含多余的负号,以及其它非法格式 4)非阿拉伯数字,例如印度数字 १२३,阿拉伯文 ١٢

  • Java使用正则表达式(regex)匹配中文实例代码

    只能输入中文 /** * 22.验证汉字 * 表达式 ^[\u4e00-\u9fa5]{0,}$ * 描述 只能汉字 * 匹配的例子 清清月儿 */ @Test public void a1() { Scanner sc = new Scanner(System.in); String input = sc.nextLine(); String regex = "^[\\u4e00-\\u9fa5]*$"; Matcher m = Pattern.compile(regex).matc

随机推荐