$ZCOnvert()

最初の引数を別のエンコーディングに変換された文字列として返します。2つの引数の形式は、文字セット内の大文字小文字のエンコーディングを変更します。3つの引数の形式は、符号化方式を変更します。

$ZCONVERT() 関数の書式は次のとおりです:

$ZCO[NVERT](expr1, expr2,[expr3])
[注意] 注意

UTF-8モードが有効な場合、GT.M はICUライブラリを使用して大文字と小文字を変換します。「動作原理」セクションで説明したように、文字列の大文字と小文字の変換はUnicodeコードポイント値に従って行われます。これは、例えば、電話帳の名前のような、言語的または文化的に正しい大文字と小文字の変換ではないかもしれない。したがって、アプリケーション開発者は、実際のケース変換が言語的および文化的に特定のニーズに合っていることを保証する必要があります。Mモードの$ZCONVERT() 関数の2つの引数の形式は、ICUライブラリを使用して文字列の大文字と小文字の変換に関連する操作を実行しません。

$ZCONVERT()の例

例:

GTM>write $zconvert("Happy New Year","U")
HAPPY NEW YEAR

例:

GTM>write $ZCHSET
M
GTM>Write $zconvert("HAPPY NEW YEAR","T")
%GTM-E-BADCASECODE, T is not a valid case conversion code

例:

GTM>Set T8="主要雨在西班牙停留在平原"
GTM>Write $Length(T8)
12
GTM>Set T16=$zconvert(T8,"UTF-8","UTF-16LE")
GTM>Write $length(T16)
%GTM-E-BADCHAR, $ZCHAR(129,137,232,150) is not a valid character in the UTF-8 encoding form
GTM>Set T16=$ZCOnvert(T16,"UTF-16LE","UTF-8")
GTM>Write $length(T16)
9

上記の例では、$LENGTH() 関数はUTF-8エンコーディング文字列を引数としてとるため、エラーをトリガします。

inserted by FC2 system