【发布时间】:2026-01-03 11:50:02
【问题描述】:
这个问题很简单。只是如何将 swift String 转换为 CFMutableString。我只找到How to convert a swift String to CFString。任何帮助将不胜感激。
【问题讨论】:
-
显示你想要完成的代码。
这个问题很简单。只是如何将 swift String 转换为 CFMutableString。我只找到How to convert a swift String to CFString。任何帮助将不胜感激。
【问题讨论】:
Cocoa 中的大多数不可变类都有一个 mutableCopy() 方法来返回其自身的可变克隆。 NSString.mutableCopy() 返回一个 NSMutableString。 NSData.mutableCopy() 返回 NSMutableData 等。
然后您可以从 Cocoa (NS*) 桥接到 Foundation (CF*) 类:
let str = "Hello world"
let cfString = (str as NSString).mutableCopy() as! CFMutableString
【讨论】:
由于CFMutableString 是从NSMutableString 桥接的免费电话,您只需从您的字符串创建NSMutableString,然后将其转换为CFMutableString:
let str: String = "test 123"
let cfmStr = NSMutableString(string: str) as CFMutableString
【讨论】:
使用测试字符串let str: String = "test 123"
对于CFMutableString:
(str as! CFMutableString)
对于CFString,您可以这样做:
let cfStr: CFString = str
或
(str as CFString)
因为转换总是成功的。
【讨论】: