我正在学习Swift 4
,我有一个算法可以输出数组的 base 64 描述,如下所示:
extension String {
func fromBase64() -> String? {
guard let data = Data(base64Encoded: self) else {
return nil
}
return String(data: data, encoding: .utf8)
}
func toBase64() -> String {
return Data(self.utf8).base64EncodedString()
}
}
let output = [1, 2, 4, 65].description.toBase64()
print(output.fromBase64()) // "[1, 2, 4, 65]"
现在,我的问题是,我需要在阵列后面Array
,而不是作为一个String
。我在互联网上查过,但我找不到这种类型数组的解析方法(他们都在谈论 JSON)。
以下是将字符串转换为Int
数组的方法:
var toString = output.fromBase64() //"[1, 2, 4, 65]"
if let str = toString {
let chars = CharacterSet(charactersIn: ",][ ")
let split = str.components(separatedBy: chars).filter { $0 != "" }.flatMap { Int($0)}
print(split) //[1, 2, 4, 65]
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句