超長字符串轉Stringbuffer

把字符串「abcde」 按指定步長 轉成 .append("ab").append("cd").append("e"); 格式。app

`private static String str1 = "7162322271617161716333201ea09070828ce1c384507050a1c3d0c7a340d20120e0e3b3a33201e0f10a62e2c343c130f2b1201601d1030234416"; private static String str = "0001000000100040000400c04f532f327d8175d4000087740000005650434c5461e3d9fb000087cc00000036636d61709cbc69ab00007a64000005e863767420bb32bf1600000f24000000326670676d8333c24f0000";優化

public static void main(String[] args) {
	System.out.println(str.length());
	String result = "";
	String temp = "";
	int length = 0;
	int step = 100;
	StringBuffer sb = new StringBuffer();
	while (true) {
		if (length == 0) {
			temp = str.substring(0, length + step);
			length += step;
			result = str.substring(length, str.length());
		} else {
			if (result.length() > step) {
				temp = str.substring(length, length + step);
				result = str.substring(length + step, str.length());
			} else {
				temp = result;
				sb.append(".append(").append(temp).append(")\n");
			}
			length += step;
		}

		if (result.length() > step) {
			sb.append(".append(\"").append(temp).append("\")\n");
		} else {
			sb.append(".append(\"").append(result).append("\");");
			break;
		}

	}
	System.out.println(sb.toString());
}`

個人處理結果以下圖,以爲代碼和邏輯還能夠優化,歡迎建議和意見。3d

輸入圖片說明

相關文章
相關標籤/搜索