一尘不染

如何在Swift中从NSData初始化字符串

swift

我一直在尝试从NSDataSwift中初始化一个字符串。

苹果在NSString
Cocoa文档
中说您必须使用以下代码:

 init(data data: NSData!, encoding encoding: UInt)

但是,苹果没有提供任何用法或放置示例的示例init

我正在尝试将以下代码从Objective-C转换为Swift

NSString *string;
string = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];

我一直在尝试许多可能的语法,例如以下语法(当然它不起作用):

var string:NSString!
string = init(data: fooData,encoding: NSUTF8StringEncoding)

阅读 248

收藏
2020-07-07

共1个答案

一尘不染

这是您应该如何初始化NSString

Swift 2.X或更旧版本

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

Swift 3或更高版本:

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

本文档说明了语法。

2020-07-07