截取指定长度字节数后的字符串(Java方法实例,注:同样思路js也适用)

    可能之前是习惯了上网查看其他人的资料,当我遇到这样的问题的时候,我第一时间想到的就是上网查个现成的方法直接用;可是查阅网上各大论坛以及其他资料之后,发现大部分人都是照搬其他人的,这种情况很严重,而且个人感觉很不利于个人技术的成长;当然更重要的原因是,我感觉网上的大部分方法都把问题给复杂化了,无论是用js方法截取还是通过封装Java类,都感觉繁琐了些;为此我自己写了个相对来说较为简单的方法,其实很简单的思路和方法就能实现,下面奉上我自己的方法,希望大家多多指正不足之处(支持全角输入的字符和汉字等,已测;可直接引用):


/**

* 返回截取指定长度字节数后的字符串,多余部分用“...”代替

* @作者 jiyanle

* @日期 2014-7-6

* @param strs

* @param length

* @return

*/

public static String cutStr(String strs, int length) {

    int sum = 0;

    String finalStr = "";

    if (null == strs || strs.getBytes().length <= length) {

        finalStr = (strs==null?"":strs);

    } else {

        for (int i = 0; i < strs.length(); i++) {

            String str = strs.substring(i, i + 1);

            // 累加单个字符字节数

            sum += str.getBytes().length;

            if (sum > length) {

                finalStr = strs.substring(0, i) + "...";

                break;

            }

        }

    }

    return finalStr;

}


测试用例如下:

    1、直接在js中弹出方式:alert(‘<%=CutString.cutStr("jj吉k_延jyl乐", 4)%>‘);

    2、直接控制台输出方式:System.out.println(cutStr("jj吉k_延jyl乐", 4));


本文出自 “猪会飞” 博客,请务必保留此出处http://jiyanle.blog.51cto.com/6932197/1435022

截取指定长度字节数后的字符串(Java方法实例,注:同样思路js也适用),布布扣,bubuko.com

截取指定长度字节数后的字符串(Java方法实例,注:同样思路js也适用)

上一篇:使用python测试sphinx(coreseek)做全文索引


下一篇:android 获得存储设备状态