zoukankan      html  css  js  c++  java
  • Java 判断是否为汉字 判断是否为乱码 判断字符串是否为双整型数字 整数 数字

    /**
      * 判断是否为汉字
      * 
      * @param str
      * @return
      */
     public static boolean isGBK(String str) {
      char[] chars = str.toCharArray();
      boolean isGBK = false;
      for (int i = 0; i < chars.length; i++) {
       byte[] bytes = ("" + chars[i]).getBytes();
       if (bytes.length == 2) {
        int[] ints = new int[2];
        ints[0] = bytes[0] & 0xff;
        ints[1] = bytes[1] & 0xff;
        if (ints[0] >= 0x81 && ints[0] <= 0xFE && ints[1] >= 0x40
          && ints[1] <= 0xFE) {
         isGBK = true;
         break;
        }
       }
      }
      return isGBK;
     }

    /**
      * 判断是否为乱码
      * 
      * @param str
      * @return
      */
     public static boolean isMessyCode(String str) {
      for (int i = 0; i < str.length(); i++) {
       char c = str.charAt(i);
       // 当从Unicode编码向某个字符集转换时,如果在该字符集中没有对应的编码,则得到0x3f(即问号字符?)
       //从其他字符集向Unicode编码转换时,如果这个二进制数在该字符集中没有标识任何的字符,则得到的结果是0xfffd
       //System.out.println("--- " + (int) c);
       if ((int) c == 0xfffd) {
        // 存在乱码
        //System.out.println("存在乱码 " + (int) c);
        return true;
       }
      }
      return false; 
     }


     /**
      * 判断字符串是否为双整型数字
      * 
      * @param str
      * @return
      */
     public static boolean isDouble(String str) {
      if (StringUtil.isNullOrEmpty(str)) {
       return false;
      }
      Pattern p = Pattern.compile("-*\d*.\d*");
      // Pattern p = Pattern.compile("-*"+"\d*"+"."+"\d*");
      return p.matcher(str).matches();
     }

     /**
      * 判断字符串是否为整字
      * 
      * @param str
      * @return
      */
     public static boolean isNumber(String str) {
      if (StringUtil.isNullOrEmpty(str)) {
       return false;
      }
      Pattern p = Pattern.compile("-*\d*");
      return p.matcher(str).matches();
     }
     
     /**
      * 判断是否为数字
      * 
      * @param str
      * @return
      */
     public static boolean isNumeric(String str)   
     {   
             Pattern pattern = Pattern.compile("[0-9]*");   
             Matcher isNum = pattern.matcher(str);   
            if( !isNum.matches() ) {   
               return false;   
             }   
            return true;   
     }

    需要导入 java.util.regex.Pattern 和 java.util.regex.Matcher

    from:http://hi.baidu.com/zdz8207/item/13abe809f904c718eafe38d5

  • 相关阅读:
    简单的方法爬取b站dnf视频封面步骤解释
    ROS讲座 关于ROS2和Gazebo C++ in Open Source Robotics
    深圳3分钟完成港澳签注 24小时自助办证服务攻略
    如何建立数据平台?看上市公司的选择!
    从开发转型到技术总监的迷茫
    计算机控制技术课程解释与问题答疑
    深度剖析 | 基于大数据架构的BI应用
    Android系统开机启动流程及init进程浅析
    经验分享 | 如何搭建企业管理驾驶舱
    android 修改framework下资源文件后如何编译
  • 原文地址:https://www.cnblogs.com/exmyth/p/3956967.html
Copyright © 2011-2022 走看看