zoukankan      html  css  js  c++  java
  • java判断输出字符串个数,并将截取字符以"..."代替

    public class teast {
    private String str;
    private int counterOfDoubleByte;
    private byte b[];

    /**
    * 置需要被限制度的字符串
    * @param str 需要被限制度的字符串
    */
    public teast(String str) {
    this.str = str;
    }
    public static void main(String[] args) throws Exception {
    String name="java_mature";
    teast str = new teast(name);
    String afterStr = str.getLimitLengthString(8,"...");
    System.err.println(afterStr);
    }

    /**
    * @param len 需要示的(注意:度是以byte为单位的,一个汉字是2byte)
    * @param symbol 用于表示省略的信息的字符,如“...”,“>>>”等。
    * @return 返回理后的字符串
    */
    public String getLimitLengthString(int len, String symbol) throws Exception{
    counterOfDoubleByte = 0;
    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;
    }
    }
  • 相关阅读:
    MyBatis入门基础
    复制复杂链表
    二叉树中和为某一值的所有路径
    树的层次遍历
    Statement, PreparedStatement和CallableStatement的区别
    JSP有哪些动作?
    latex 输入矩阵
    Struts简单入门实例
    在Eclipse里面配置Struts2
    Windows使用Github
  • 原文地址:https://www.cnblogs.com/yangsanluo/p/14992875.html
Copyright © 2011-2022 走看看