LoginSignup
11
11

More than 5 years have passed since last update.

文字を文字コードに変換する

Last updated at Posted at 2014-11-24

目的

Swift で String から取り出した文字を文字コードに変換します。

文字を文字コードに変換する

たとえば文字が charValue に格納されているとき、それを文字コードに変換するには次のようにします。

Unicode 文字コードに変換する

Character 型の文字を Unicode 文字コードに変換します。

それには、文字をいったん文字列にした上で unicodeScalars で文字毎の Unicode コレクションを取得し、その最初の文字の value を参照します。

let code:UInt32 = String(charValue).unicodeScalars.first!.value

UTF-16 の文字コードは UInt32 型で取得できます。2 バイト文字も 4 バイト文字も 1 つの文字として扱われます。

UTF-8 文字コードに変換する

Character 型の文字を UTF-8 文字コードに変換します。

それには、文字をいったん文字列にした上で utf8 で 1 バイト毎の UTF8.CodeUnit コレクション (String.UTF8View) を取得します。

let codes:String.UTF8View = String(charValue).utf8

UTF-8 の場合、1 文字が 1 バイトとは限らないため、戻り値の String.UTF8View では複数のバイトデータが含まれることがあります。

その最初の文字コードが欲しければ次のようにします。

let code:UTF8.CodeUnit = codes.first!

UTF8.CodeUnitUInt8 と同等に扱えます。


[詳細] http://ez-net.jp/article/28/7I6PI-lB/27pbsZx7YJG_/

11
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
11