13.2 Zeichencodierungen

Die meisten Zeichen- und Textbibliotheksbefehle akzeptieren einen optionalen Parameter, der die zu verwendende Zeichencodierung angibt. Dieser Parameter teilt dem Befehl mit, wie die von Ihnen übergebenen Zeichenfolgen intern formatiert sind, d.h. welche Zeichencodierung sie verwenden.

Normalerweise sollten Sie diesen Parameter überhaupt nicht verwenden, denn ab Hollywood 7.0 sollte jeder Text als UTF-8 gespeichert werden. Unter bestimmten Umständen kann es jedoch notwendig sein, den optionalen Zeichencodierungsparameter zu verwenden. Zum Beispiel können Zeichenketten von Hollywood auch rohe Binärdaten enthalten. Diese Daten sind natürlich im UTF-8-Format nicht gültig und die Zeichenketten-Befehle werden sie ablehnen. Darum muss dann diesen Befehlen mitgeteilt werden, dass es sich nicht um UTF-8, sondern um rohe Folge von Bytes handelt. Dies kann durch die Übergabe der Konstante #ENCODING_RAW im Zeichencodierungs-Parameter erfolgen.

Hier ist ein Überblick über die verschiedenen Kodierungen in Hollywood:

#ENCODING_UTF8:
Dies ist die Standard-Kodierung ab Hollywood 7.0 und sollte verwendet werden, wann immer Sie mit Texten arbeiten.

#ENCODING_ISO8859_1:
Dies war die Standard-Kodierung vor Hollywood 7.0. Sie wird aus Kompatibilitätsgründen noch unterstützt. Aber es wird nicht empfohlen, sie zu benutzen.

#ENCODING_RAW:
Dies ist ein Synonym für #ENCODING_ISO8859_1. Es kann verwendet werden, um den Textbibliotheksbefehlen mitzuteilen, dass sie die Zeichenfolge als rohe Binärdaten anstelle von Text behandeln sollen.

#ENCODING_AMIGA:
Dies legt den Standardzeichensatz des Systems auf AmigaOS und kompatiblen Systemen fest. Diese Konstante wird nur von ConvertStr() und nur auf AmigaOS und kompatiblen Systemen unterstützt. #ENCODING_AMIGA ermöglicht es Ihnen, zwischen AmigaOS' Standard-Zeichensatz und UTF-8 (oder umgekehrt) zu konvertieren.

Sie können den Befehl SetDefaultEncoding() verwenden, um die Standard-Zeichencodierungen für die Zeichenkette- und Textbibliotheken zu ändern. Siehe SetDefaultEncoding für Details.


Navigation zeigen