-cStringUsingEncoding:
指定したエンコーディングのC文字列を返します
-(__strong const char *)cStringUsingEncoding:(NSStringEncoding)encoding
プログラマのための文字コード技術入門 (WEB+DB PRESS plus) (WEB+DB PRESS plusシリーズ)
- 作者: 矢野啓介
- 出版社/メーカー: 技術評論社
- 発売日: 2010/02/18
- メディア: 単行本(ソフトカバー)
- 購入: 34人 クリック: 578回
- この商品を含むブログ (129件) を見る
解説
指定したエンコーディングのC文字列を返します。
10.4以降はcStringを使わず、このメソッドを使います。
返り値のC文字列はレシーバが解放されると同時に解放されます。
変換できなかった場合にはNSCharacterConversionExceptionが起こされます。
canBeConvertedToEncoding:を使うと指定したエンコーディングで損失なしに変換できるかどうかのテストができます。
返り値
( __strong const char * )
C文字列
フレームワーク
Foundation
クラス
NSString
Instance Methods
使用可能
10.4
参照
-getCString:
-canBeConvertedToEncoding:
+defaultCStringEncoding
-cStringLength
-getCharacters:
-UTF8String
関連記事
Cocoa: NSString を char 型の配列に変換する - Sarabande.jp
objective c - How to convert NSString to C string? - Stack Overflow
例文
#pragma mark cStringUsingEncoding: -(id)method008 { const char *cPointer; NSString *str1 = [NSString stringWithString:@"string"]; NSString *ret ; cPointer = [str1 cStringUsingEncoding:NSASCIIStringEncoding]; if ([str1 canBeConvertedToEncoding:NSASCIIStringEncoding]){ ret = [[NSString alloc] initWithCString:cPointer encoding:NSASCIIStringEncoding ]; } else{ ret = [NSString stringWithString:@"string"]; } return ret; }