Writing a String to an NSOutputStream in Swift

后端 未结 3 1778
抹茶落季
抹茶落季 2020-12-03 08:38

I\'m trying to write a String to an NSOutputStream in Swift. Writing Strings that way with Objective C usually works by passing it as NSData

<
3条回答
  •  无人及你
    2020-12-03 09:03

    Hope this example helps out. It writes a string to document directory. Note that outputStream is tested using Swift 1.1 with failable initializer.

    var myString = "Hello world!"
    var docPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as String
    var path = docPath.stringByAppendingPathComponent("doc")
    var outputStream = NSOutputStream(toFileAtPath: path, append: false)
    var data: NSData = myString.dataUsingEncoding(NSUTF8StringEncoding)!
    var buffer = [UInt8](count:data.length, repeatedValue:0)
    data.getBytes(&buffer)
    outputStream?.open()
    outputStream?.write(&buffer, maxLength: data.length)
    outputStream?.close()
    

    Regards

提交回复
热议问题