我对创建修改后的编码UUID感兴趣,但是我有点想获得正确的格式。我目前拥有的东西由于未知的原因而无法编译,但是奇怪的是我能够在操场上运行它。这是函数:

class func genID() -> String {
  let uuid = NSUUID.UUID()
  let data = NSData(bytes:&uuid, length:16)
  let base64 = data.base64EncodedStringWithOptions(nil)
  let options = NSStringCompareOptions.LiteralSearch
  let result = base64
    .stringByReplacingOccurrencesOfString("/", withString: "-", options: options, range: nil)
    .stringByReplacingOccurrencesOfString("+", withString: "_", options: options, range: nil)
    .stringByReplacingOccurrencesOfString("=", withString: "", options: options, range: nil)
  return result
}

该问题在函数的第二行标记;数据值的创建。奇怪的是,那条线确实在操场上工作。任何帮助,将不胜感激。那我在这里想念什么?

提前致谢。

最佳答案

您可以使用以下命令从NSData创建NSUUID对象:

let uuid = NSUUID.UUID()
// data object with appropriate size:
let data = NSMutableData(length: 16)
// fill the bytes from the UUID:
uuid.getUUIDBytes(UnsafeMutablePointer(data.mutableBytes))

10-08 08:44
查看更多