2012-08-24 45 views
0

的具體數目我有一個很長的字符串,我想在下面的格式輸出:返回多內襯字符串,字符

我需要輸出的最大字符數說40%的線,而我保持最多說5行,並放棄其餘。這應該是webservice(SOAP)的返回字符串。

這裏是什麼想實現的一個片段。

String output = "A veeery long string with more than 200 characters"; 

StringBuilder sb = new StringBuilder(output); 
int i = 0; 
while ((i = sb.indexOf(" ", i + 40)) != -1) 
{ 
    sb.replace(i, i + 1, "\n"); 
} 
System.out.println(sb.toString()); 

result = sb.toString(); 
... 

return result; 

現在System.out.println(sb.toString());作品就好了,但是當我的用戶web服務測試儀返回瀏覽器1線,是不是我想實現

+0

它好工作對我來說,還有什麼你分配的緩衝區導致並返回它之間做什麼? – Vikdor

+0

只是捕捉一些例外。什麼可以影響到所有 – kijana

+1

那麼輸出,爲瀏覽器輸出 - 這被解釋爲HTML - 你需要的''
而不是簡單的換行。問題是:在沒有瀏覽器的情況下查看它的樣子是什麼? –

回答

1

問題,如果你在瀏覽器中查看頁面的源代碼,都是行拆分?如果是這樣,您需要用<br>標籤替換換行符。

+0

+1你真的明白了 – kijana

1

我認爲你需要做到這一點... 。

result = result + sb.toString(); 

,當你做到這一點result = sb.toString();那麼你正在結果指向一個新的String對象,它失去了參考之前的String對象。

使用result = result + sb.toString();仍指向一個新的字符串對象,但這次新的String對象具有前一個和當前的String。

+0

使用即使我實現上述'方法測試人員正在此爲輸出returned' 'java.lang.String中:「同樣很長的字符串在瀏覽器上的一行」' – kijana

2

您還可以使用番石榴庫這些類型的操作。看看Splitter

另外,儘量事先在網站上搜索,因爲有噸的像這樣的:)

+0

這是分裂時,它在OUPUTS的控制檯,但我想要在瀏覽器上輸出它沒有做的相同結果。 – kijana