zoukankan      html  css  js  c++  java
  • java实现截取6个汉字字母数字

    项目中使用到需要截取6个字(12个字母或数字),解决方法如下:

    /**
         * 
         * @方法名称:getWordCount
         * @内容摘要: <截取输入字符串 大于6个后显示...>
         * @param str
         * @return String
         * @exception
         * @author:鹿伟伟
         * @创建日期:2016年9月5日-下午1:30:41
         */
        public static String getWordCount(String str) {
            try {
                String symbol = "...";
                int len = 10;
                int counterOfDoubleByte = 0;
                byte b[] = str.getBytes("GBK");
                if (b.length <= len)
                    return str;
                for (int i = 0; i < len; i++) {
                    if (b[i] < 0)
                        counterOfDoubleByte++;
                }
                if (counterOfDoubleByte % 2 == 0)
                    return new String(b, 0, len, "GBK") + symbol;
                else
                    return new String(b, 0, len - 1, "GBK") + symbol;
    
            } catch (UnsupportedEncodingException e) {
                logger.error("截取字符串getWordCount异常:", e);
                return "";
            }
        }

    运行结果:
    一个数字或字母是一个字节,一个汉字是两个字节
    这里写图片描述

  • 相关阅读:
    JavaWeb
    Network
    JavaWeb
    Maven
    IDEA
    Maven
    Network
    JavaWeb
    JavaWeb
    JavaWeb
  • 原文地址:https://www.cnblogs.com/luweiwei/p/5968456.html
Copyright © 2011-2022 走看看