ワイド文字のルーチン
文字列の操作 への移動
ワイド文字(要素あたり 2 バイト)はさまざまな状況で使用されます。UnicodeString は、RAD Studio のデフォルトの文字列型です。
ワイド文字を使用すると、複数のロケールを対象にするアプリケーションでの文字列処理の問題を一部簡略化することもできます。1 バイト文字だけの文字列の処理では一般的であった仮定の多くはマルチバイト文字セット(MBCS)を使用するシステムには適用できませんが、ワイド文字エンコード方式を採用することで、それらが同じように適用できるという利点があります。ワイド文字列では、文字列のバイト数と文字列の要素数の関係も一定値になります。MBCS 文字列では、文字の途中で切り離す、または文字の第 2 バイトを別の文字と間違えないようにする必要があります。ワイド文字には同様の問題があります。要素はすべて 2 バイトですが、基本多言語面(BMP)にない文字では 2 つの要素が必要です。
2 つの型(UnicodeString
と WideString
)はワイド文字列を表現します。
WideString
の形式は Windows のWideString
と本質的に同じです。WideString
は COM アプリケーションでの使用に適しています。WideString
は参照がカウントされません。したがって他のタイプのアプリケーションではUnicodeString
がさらに柔軟で効率的です。さらに、UnicodeString
型にはWideString
型よりも多くの便利な関数を利用できます。したがって一般にはUnicodeString
の使用をお勧めします。
このトピックで扱うのは、WideString
(UnicodeString
ではない)です。
VCL では UnicodeString
型を使用するようになり、文字列値がシングルバイト文字列または MBCS 文字列を表さなくなりました。
以下の関数は、標準の 1 バイト文字の文字列(または MBCS 文字列)と Unicode 文字列の間で変換します。
以下の関数は、WideString と他の表現方法の間で変換します。
次のルーチンは、WideString を直接処理します。
- WideCompareStr
- WideCompareText
- WideSameStr
- WideSameText
- WideFmtStr
- WideFormat
- WideLowerCase
- WideUpperCase
次のルーチンには、ワイド文字を処理するためのオーバーヘッドがあります。