Zurück |  | Weiter

## 9.12. Unicode-Texte in Hex-Code umwandeln

Java „kann Unicode“. XML „kann Unicode“. Somit kann auch PDFUnit Unicode. In Kapitel 7: „Unicode“ wird das Thema Unicode ausführlich beschrieben.

Dieses Kapitel beschreibt ein kleines Werkzeug, das einen Unicode-String in seinen ASCII-Hex-Code umwandelt, damit sie diesen in Ihren Tests verwenden können. Für wenige „unlesbare“ Zeichen ist dieser Weg einfacher, als einen neuen Font auf Ihrem Rechner zu installieren. Falls Sie das überhaupt dürfen.

Das Programm `ConvertUnicodeToHex` konvertiert eine beliebige Zeichenkette in ASCII-Code und „escaped“ dabei alle Nicht-ASCII-Zeichen in ihren jeweiligen Unicode-Hex-Code. Beispielsweise wird das Euro-Zeichen in `\u20AC` umgewandelt.

Die Eingabedatei selber kann in einem beliebigen Encoding vorliegen, es muss nur vor der Programmausführung korrekt gesetzt sein.

### Aufruf

Das Javaprogramm wird mit dem Parameter `-D` gestartet:

    ::
    :: Converting Unicode content of the input file to hex code.
    ::

    @echo off
    setlocal
    set CLASSPATH=./lib/pdfunit-2015.10/*;%CLASSPATH%

    set TOOL=com.pdfunit.tools.ConvertUnicodeToHex
    set OUT_DIR=./tmp
    set IN_FILE=convert-unicode-to-hex.in.txt

    java -Dfile.encoding=UTF-8 %TOOL%  %IN_FILE%  %OUT_DIR%
    endlocal

Der vorletzte Parameter ist die Eingabedatei, der letzte Parameter das Ausgabeverzeichnis.

### Eingabe

Die im Skript verwendete Eingabedatei `convert-unicode-to-hex.in.txt` enthält folgende Werte:

    äöü € @

### Ausgabe

Der Name wird automatisch aus dem Namen der Eingabedatei abgeleitet. Die Datei `_convert-unicode-to-hex.out.txt` enthält dann den Hex-Code:

    #Unicode created by com.pdfunit.tools.ConvertUnicodeToHex
    #Wed Jan 16 21:50:04 CET 2013
    convert-unicode-to-hex.in_as-ascii=\u00E4\u00F6\u00FC \u20AC @

Die Ausgabedatei wird im Encoding der Java-Runtime erstellt. Dazu wird der Wert der Umgebungsvariablen `file.encoding` ausgelesen.

Die Eingabe selber wird „getrimmt“. Wenn Sie für Ihren Test Leerzeichen am Anfang oder Ende benötigen, müssen Sie diese nach der Umwandlung in Unicode wieder hinzufügen.

Zurück | Nach oben | Weiter
9.11. Sprungziele nach XML extrahieren | Zum Anfang | 9.13. XFA-Daten nach XML extrahieren