NSData
Swift で文字列を初期化しようとしています。
の中にNSString Cocoa ドキュメントApple はこれを使用する必要があると言っています:
init(data data: NSData!, encoding encoding: UInt)
しかし、Apple は使用例や を配置する場所についての例を一切含めませんでしたinit
。
次のコードをObjective-CからSwiftに変換しようとしています
NSString *string;
string = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
私は次のような多くの可能な構文を試してきました (もちろん機能しませんでした)。
var string:NSString!
string = init(data: fooData,encoding: NSUTF8StringEncoding)
ベストアンサー1
必要な実装コードは次のとおりです。
Swift 3.0では:
var dataString = String(data: fooData, encoding: String.Encoding.utf8)
あるいは単に
var dataString = String(data: fooData, encoding: .utf8)
古いSwiftバージョン:
Swift 2.0では:
import Foundation
var dataString = String(data: fooData, encoding: NSUTF8StringEncoding)
Swift 1.0の場合:
var dataString = NSString(data: fooData, encoding:NSUTF8StringEncoding)