1. ホーム
  2. string

[解決済み] SwiftでNSDataから文字列を初期化する方法

2022-04-22 15:45:46

質問

からの文字列を初期化しようとしています。 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)

解決方法は?

を初期化する方法です。 NSString :

Swift 2.X またはそれ以前

let datastring = NSString(data: fooData, encoding: NSUTF8StringEncoding)

Swift 3 以降のバージョンであること。

let datastring = NSString(data: fooData, encoding: String.Encoding.utf8.rawValue)

このドキュメント は、その構文を説明しています。