得到实际的字符串长度

StringUtil2.java

public class StringUtil2 {
    private String string;//需要计算长度的字符串
    private int strLength;//字符串的实际长度
    public String getString() {
        return string;
    }
    public void setString(String string) {
        this.string = string;
    }
    public int getStrLength() {
        char[] c=string.toCharArray();//转为字符数组
        int factualLength=0;//用于保存每个字符的实际长度
        for (int i = 0; i < c.length; i++) {
            factualLength=String.valueOf(c[i]).getBytes().length;//获取字节数组的长度
            if (factualLength==3) {
                factualLength=2;//utf-8编码的汉字实际字节长度为3,改为2
                
            }
            strLength+=factualLength;//将每个字符长度累加
        }
        return strLength;
    }
    public void setStrLength(int strLength) {
        this.strLength = strLength;
    }
    
}

index.jsp


    
请输入字符串

result.jsp


    <%
        String str=request.getParameter("str");
    %>
    
    
    
字符串:
实际长度:
26.PNG
得到实际的字符串长度_第1张图片
27.PNG
28.PNG

你可能感兴趣的:(得到实际的字符串长度)