Используйте библиотеку word-wrap (доступна в Maven Central).
Вот один из способов ее использования:
String text = "hello how are you going?";
String wrapped =
WordWrap.from(text)
.maxWidth(10)
.insertHyphens(true) // true is the default
.wrap();
Вывод:
hi there
how are
you going?
Библиотека сохраняет начальные пробелы в строках, что является одной из жалоб на поведение предложения Apache commons-lang .Вы также можете указать функцию stringWidth
, чтобы получать точные пиксельные результаты при рендеринге текста.
В библиотеке имеется достойное покрытие модульных тестов (что следует иметь в виду, когда вы рассматриваете копирование и вставку фрагментов кода изweb!).
Зависимость Maven:
<dependency>
<groupId>com.github.davidmoten</groupId>
<artifactId>word-wrap</artifactId>
<version>0.1.1</version>
</dependency>
Обязательно проверьте более позднюю версию.