读取NSInputStream会产生-1个字节的可用错误

时间:2014-07-17 21:51:05

标签: swift foundation nsinputstream

我尝试使用NSInputStreamNSOutputStream进行一些简单的编码:

import Foundation

let path = "/Users/johni/desktop/a" // holds "123456789abcdef"
var data: NSData = NSData(contentsOfFile: path)
var inp: NSInputStream = NSInputStream(data: data)
println(data.length) // returns 15
println(inp.hasBytesAvailable) // returns false

我从read方法接收-1,意味着它没有可用的字节,为什么会这样?

我也尝试使用NSInputStream初始值设定项直接初始化fileAtPath并得到相同的错误。

1 个答案:

答案 0 :(得分:1)

在打开输入流之前,不能使用输入流。

inp.open()
inp.hasBytesAvailable //returns true