0

ICU 4.2.1 の時点で、UnicodeString を C 文字列に設定する唯一の簡単な方法は、データを使用して新しい UnicodeString を構築し、目的の文字列を新しい文字列に設定して、データの割り当て、コピー、および割り当て解除を行うことです。私が望むよりも。

データを手動で割り当てることなく、UnicodeString を (ヌル終了/長さ) C 文字列に設定する方法はありますか?

たぶん、ICUの新しいバージョンで?(4.2.1 以外のバージョンのドキュメントは確認していません。これが私のディストリビューションの最新バージョンです。)

setTo(const char*)C文字列でUnicodeStringを構築できることを考えると、メソッドであるべきもののように思えます。

4

2 に答える 2

1

それを行う方法がわかりません.setToの機能リクエストを提出するか、パッチを提供することさえできます!

于 2010-10-20T04:58:54.347 に答える
0

ICU 文字列は UTF-16 エンコーディングを使用し、これは一連の UChars - 2 バイト エントリであるため、透過的にchar const *文字列を (UTF-8 であっても) UTF-16 文字列に設定することはできません。操作にはデータ変換が必要です。

于 2010-11-07T20:44:35.110 に答える