[解決済み] CFStringRefをNSStringに変換する方法は?
2022-04-22 20:51:14
質問
NSString *aNSString;
CFStringRef aCFString;
aCFString = CFStringCreateWithCString(NULL, [aNSString UTF8String], NSUTF8StringEncoding);
aCFString = CFXMLCreateStringByUnescapingEntities(NULL, aCFString, NULL);
どうすれば、新しい
NSString
から
aCFString
?
解決方法は?
NSString と CFStringRef は、quot;Toll free bridged" つまり、単純にタイプキャストで行き来できます。
例えば
CFStringRef aCFString = (CFStringRef)aNSString;
は完全に透過的に動作します。同様に
NSString *aNSString = (NSString *)aCFString;
以前の構文はMRC用でした。ARCを使用している場合、新しいキャスティング構文は次のようになります。
NSString *aNSString = (__bridge NSString *)aCFString;
も同様に動作します。注意すべき点は、CoreFoundationはしばしば参照カウントが+1されたオブジェクトを返すことで、解放する必要があることを意味します(すべてのCF[Type]Createフォーマット関数がこれを行います)。
Cocoaでは、安全にautoreleaseやreleaseを使用して、それらを解放することができるのが良い点です。
関連
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] JavaでStringをintに変換するにはどうしたらいいですか?
-
[解決済み] 文字列の単語を反復処理するにはどうすればよいですか?
-
[解決済み] バイトを文字列に変換する
-
[解決済み] Pythonで文字列の部分文字列を取得するにはどうすればよいですか?
-
[解決済み] C#で文字列のエンコーディングを手動で指定せずに、一貫性のあるバイト表現を得るには?
-
[解決済み] JavaScriptで文字列を整数に変換する方法は?
-
[解決済み] Cocoa Autolayout: コンテンツの抱擁 vs コンテンツの圧縮抵抗の優先順位
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Swift のプロトコル: メソッドがスーパークラスのメソッドをオーバーライドしない。
-
[解決済み] Cocoa Autolayout: コンテンツの抱擁 vs コンテンツの圧縮抵抗の優先順位
-
[解決済み] NSOrderedSetが生成するアクセサで例外が発生する。
-
[解決済み】Core Data vs SQLite 3 [終了しました。]
-
[解決済み】ユニットテスト内のコードでバンドルリソースを見つけられないのはなぜですか?
-
[解決済み】実行時に「Interface Builderファイル内の不明なクラス<MyClass>」というエラーが発生する。
-
[解決済み] NSUserDefaultsにNSDateを格納する最適な方法は何ですか?
-
[解決済み] CFStringRefをNSStringに変換する方法は?
-
[解決済み] NSTextFieldにテキストを設定する方法を教えてください。
-
[解決済み] NSDateを年、月、日、時、分、秒の各スタイルにフォーマットする。