java拼接字符串的三種方式


第一種是加號;

第二種是StringBuffer或者StringBuilder的append

第三種是concat()

判斷中文字符串長度的方法:

/**
     * 判斷漢字的長度
     * @param str
     * @return
     */
    public static int stringLength(String str) {
        int stringLength = 0;
        try {
            if (str != null && !str.equals("")) {
                stringLength = str.getBytes("GB18030").length;
            }
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        return stringLength;
    }

指定長度生成字符串,多的補空格:

public static String addStrLength(String str,Integer strLength){
        if(str != null){
            Integer nowLength = str.length();
            Integer total;
            for(int i = 0; i<strLength; i++){
                str = str + " ";
                total = stringLength(str);
                if(total.equals(strLength)){
                    break;
                }
            }
            return str;
        }else {
            str = "";
            for (int i=0;i<strLength;i++){
                str = str+" ";
            }
            return str;
        }
    }

 在JAVA里采用的是Unicode 編碼,中文 英文字符都是占兩個字節,所以中英文字符都算一個。

 今天遇到和別的系統做對接的時候,遇到的問題記一下。

 GBK和UTF-8的互轉

public static void main(String[] args) throws UnsupportedEncodingException {
        String srcString = "我們是中國人";
        String utf2GbkString = new String(srcString.getBytes("UTF-8"),"GBK");
        System.out.println("UTF-8轉換成GBK:"+utf2GbkString);
        String utf2Gbk2UtfString = new String(utf2GbkString.getBytes("GBK"),"UTF-8");
        System.out.println("UTF-8轉換成GBK再轉成UTF-8:"+utf2Gbk2UtfString);
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM