java—返回具有特定字符数的多行字符串

4urapxun  于 2021-07-09  发布在  Java
关注(0)|答案(3)|浏览(363)

我有一个很长的字符串,我想以以下格式输出:
我需要输出的字符数最多说,每行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()); 工作得很好,但是当我使用webservice测试仪时,它会在浏览器上返回一行代码,这不是我想要实现的

w80xi6nr

w80xi6nr1#

您也可以使用guava库进行这些类型的操作。看看斯普利特
另外,尽量提前在网站上搜索,因为有很多这样的问题:)

ktecyv1j

ktecyv1j2#

我认为你需要这样做。。。。

result = result + sb.toString();

当你这么做的时候 result = sb.toString(); 然后让result指向一个新的string对象,这样就失去了对上一个string对象的引用。
使用 result = result + sb.toString(); 您仍然指向一个新的字符串对象,但这次新的字符串对象具有上一个和当前的字符串。

vojdkbi0

vojdkbi03#

如果在浏览器中查看页面的源代码,行是否拆分?如果是这样,您将需要用替换换行符 <br> 标签。

相关问题