1. 程式人生 > >java String中文字串轉陣列 中文字串分割成一定長度的字串分成幾個

java String中文字串轉陣列 中文字串分割成一定長度的字串分成幾個

java String中文字串分割成若干一定長度的字串

/**
 * 幾個字一組 變數控制 大於零有意義
 */
int num = 6;
/**
 * 待操作的字串
 */
String str = "一二三四五六七一二三四五六七一二三四五六七一二三四五六七一二三四五六七一二三四五六七一二三四五六七一二三四五六七";
/**
 * 可以分為幾行
 */
int lines = (str.length() + (num - 1)) / num;
/**
 * 中間行
 */
int center = ((lines + 1) / 2);
System.out.println("長度:" + str.length());
System.out.println("可以分為:" + lines + "行");
/**
 * 轉成陣列
 */
char[] chars = str.toCharArray();
/**
 * 計數
 */
int j = 0;
/**
 * 開始加工
 */
for (int i = 0; i < chars.length; i += num) {
    j++;
    System.out.print("中間行=" + center + "當前行:" + j);
    String s1 = String.valueOf(chars[i]);
    for (int k = 1; k <= num - 1; k++) {
        if (i + k < chars.length)
            s1 = s1.concat(String.valueOf(chars[i + k]));
    }
    //標示中間行
    if (j == center) {
        System.out.print("--->");
    }
    //列印結果
    System.out.println(s1);

}