0

Objective C (iOS SDK) でテキスト入力から文字列を読み取り、それを UTF-16 として扱い、バイトを base64 にエンコードするにはどうすればよいですか?

テキストボックスの値をUTF-16として扱い、これらのバイトをUTF-16にエンコードするという両方の側面に苦労しています。

おそらく部分的または同様の質問がSOにあることに感謝します。私は検索しました(そしてさまざまな投稿を読みました)が、私はiOS /客観的なC初心者であり、ここの完全な例から本当に恩恵を受けることができます.

ありがとう

4

2 に答える 2

4

を使用しNSStringて UTF16 エンコードに変換します。NSData

[str dataUsingEncoding:NSUTF16StringEncoding]

次に、たとえばConverting between NSData and base64 stringsの回答を使用して、結果NSDataを Base64 に変換します。

于 2013-01-30T22:33:46.223 に答える
0

値を として取得する方法を知っていると仮定するとNSString*(これは非常に単純なはずです)、次を使用して UTF-16 を取得できます-getCharacters:range:

unichar *buffer = malloc(sizeof(unichar) * [str length]);
[str getCharacters:buffer range:NSMakeRange(0, [str length])];

これunichar*により、UTF-16 文字のバッファーであるバッファーが得られます。

または、 を使用しNSData*たい場合は、次を使用できます

[str dataUsingEncoding:NSUTF16StringEncoding];
于 2013-01-30T22:34:16.283 に答える