初始化器
init(validating
init(validatingUTF8:)
通過複製和驗證給定指針引用的以 null 結尾的 UTF-8 數據來創建新字符串。
聲明
init?(validatingUTF8 cString: UnsafePointer<CChar>)
參數
cString
指向以 null 結尾的 UTF-8 代碼序列的指針。
詳述
此初始化程序不會嘗試修複 ill-formed UTF-8 代碼單元序列。如果找到,則初始化程序的結果是 nil
。
下麵的示例使用指向兩個不同 CChar
數組內容的指針調用此初始化程序——第一個具有格式良好的 UTF-8 代碼單元序列,第二個在末尾具有 ill-formed 序列。
let validUTF8: [CChar] = [67, 97, 102, -61, -87, 0]
validUTF8.withUnsafeBufferPointer { ptr in
let s = String(validatingUTF8: ptr.baseAddress!)
print(s)
}
// Prints "Optional("Café")"
let invalidUTF8: [CChar] = [67, 97, 102, -61, 0]
invalidUTF8.withUnsafeBufferPointer { ptr in
let s = String(validatingUTF8: ptr.baseAddress!)
print(s)
}
// Prints "nil"
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相關用法
- Swift String init()用法及代碼示例
- Swift String init(_:radix:uppercase:)用法及代碼示例
- Swift String init(cString:)用法及代碼示例
- Swift String init(reflecting:)用法及代碼示例
- Swift String init(stringLiteral:)用法及代碼示例
- Swift String init(describing:)用法及代碼示例
- Swift String init(repeating:count:)用法及代碼示例
- Swift String init(unsafeUninitializedCapacity:initializingUTF8With:)用法及代碼示例
- Swift String init(stringInterpolation:)用法及代碼示例
- Swift String init(_:)用法及代碼示例
- Swift String insert(contentsOf:at:)用法及代碼示例
- Swift String index(_:offsetBy:limitedBy:)用法及代碼示例
- Swift String index(_:offsetBy:)用法及代碼示例
- Swift String indices用法及代碼示例
- Swift String insert(_:at:)用法及代碼示例
- Swift String isEmpty用法及代碼示例
- Swift String suffix(from:)用法及代碼示例
- Swift String removeAll(where:)用法及代碼示例
- Swift String ...(_:_:)用法及代碼示例
- Swift String last用法及代碼示例
- Swift String contains(where:)用法及代碼示例
- Swift String prefix(through:)用法及代碼示例
- Swift String contains(_:)用法及代碼示例
- Swift String firstIndex(where:)用法及代碼示例
- Swift String first用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 String init(validatingUTF8:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。