---
title: 'Texte umbrechen (Word-Wrap)'
url: 'https://tutego.de/blog/javainsel/2009/05/texte-umbrechen-word-wrap'
markdown: 'https://tutego.de/blog/javainsel/2009/05/texte-umbrechen-word-wrap.md'
date: '2009-05-25'
description: 'Dafür gibt es unterschiedliche Varianten. Die beste ist noch, einen BreakIterator zu nutzen. NetBeans (OpenIDE) bringt hier Funktionen mit. Extrahiert und ohne Abhängigkeiten lässt sich das auf folgendes reduzieren: import java.text.BreakIterator;import java.util.ArrayList;import java.util.Arrays;i…'
taxonomy:
  category:
    - 'Open Source'
---

# Texte umbrechen (Word-Wrap)

![Illustration einer tropischen Insel mit Palmen und einem hohen Berg](https://tutego.de/blog/javainsel/user/themes/tutego/images/insel-cover.jpg)# Java Blog für Programmierer

[Java Blog für Programmierer](https://tutego.de/blog/javainsel/)

## Texte umbrechen (Word-Wrap)

25.05.2009 · [Christian Ullenboom](https://tutego.de/blog/javainsel/author/admin/)

Dafür gibt es unterschiedliche Varianten. Die beste ist noch, einen `BreakIterator` zu nutzen. [NetBeans (OpenIDE) bringt hier Funktionen mit.](http://www.java2s.com/Open-Source/Java-Document/IDE-Netbeans/openide/org/openide/util/Utilities.java.java-doc.htm) Extrahiert und ohne Abhängigkeiten lässt sich das auf folgendes reduzieren:

```java
import java.text.BreakIterator;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.StringTokenizer; 
```

```java
public class StringUtils{  /**   * Indent and wrap multi-line strings.   *    * @param original the original string to wrap   * @param width the maximum width of lines   * @param breakIterator algorithm for breaking lines   * @param removeNewLines if true, any newlines in the original string are ignored   * @return the whole string with embedded newlines   */  public static String wrapAndIndentString( String original, String indent, int width )  {    BreakIterator breakIterator = BreakIterator.getWordInstance(); 
```

```java
    List lines = wrapStringToArray( original, width, breakIterator, true );    StringBuffer retBuf = new StringBuffer(); 
```

```java
    for ( String line : lines )    {      retBuf.append( indent );      retBuf.append( line );      retBuf.append( '\n' );    } 
```

```java
    return retBuf.toString();  } 
```

```java
  /**   * Wrap multi-line strings (and get the individual lines).   *    * @param original the original string to wrap   * @param width the maximum width of lines   * @param breakIterator breaks original to chars, words, sentences, depending on what instance you provide.   * @param removeNewLines if true, any newlines in the original string are ignored   * @return the lines after wrapping   */  public static List wrapStringToArray( String original, int width,                                                 BreakIterator breakIterator, boolean removeNewLines )  {    if ( original.length() == 0 )      return Arrays.asList( original ); 
```

```java
    String[] workingSet; 
```

```java
    // substitute original newlines with spaces,    // remove newlines from head and tail    if ( removeNewLines )    {      original = original.trim();      original = original.replace( '\n', ' ' );      workingSet = new String[] { original };    }    else    {      StringTokenizer tokens = new StringTokenizer( original, "\n" ); // NOI18N      int len = tokens.countTokens();      workingSet = new String[len]; 
```

```java
      for ( int i = 0; i < len; i++ )        workingSet[ i ] = tokens.nextToken();    } 
```

```java
    if ( width < 1 )      width = 1; 
```

```

    if ( original.length()
```

Kategorien: [Open Source](https://tutego.de/blog/javainsel/category/open-source/)

[← Alle Beiträge](https://tutego.de/blog/javainsel/)

---

## Navigation

- Previous: [Ext GWT Beispiel einer editierbaren Tabelle](https://tutego.de/blog/javainsel/2009/05/ext-gwt-beispiel-einer-editierbaren-tabelle.md)
- Next: [Thema der Woche: Speicherverwaltung, Memory-Leaks](https://tutego.de/blog/javainsel/2009/05/thema-der-woche-speicherverwaltung-memory-leaks.md)
