【发布时间】:2012-07-21 05:02:40
【问题描述】:
大家好,我正在从网络服务器上下载一个 yaml 文件。我的 NSInputStream 非常适合本地 yaml 文件(使用 file://filename.yaml url 方案)
下面是相关代码sn-p:
NSInputStream * stream = [[NSInputStream alloc] initWithURL:yamlURL];
其中 yaml url 类似于 http://myip:8000/assets/test.yaml 在浏览器中打开只会导致文件下载...
有什么想法吗?
【问题讨论】:
-
我遇到了同样的问题。
initWithURL和inputStreamWithURL都返回nil,即使我可以使用NSURLConnection使用相同的 URL 成功下载有问题的文件。让initWithURL工作成功了吗? -
在下面查看我的评论...基本上我通过在使用文件之前下载到 NSData 解决了这个问题
-
是的,我对此很熟悉。
NSData不适用于大(数百 MB)文件。显然,我可以下载到本地文件(我已经有一个下载器类,可以避免在任何给定时间将整个内容加载到NSData中),但即使这样也非常低效(我必须等待大喇叭下载完成在我开始使用它之前)当我想要基于网络的流媒体解决方案时。我即将继承 NSInputStream 来做我需要的事情,但这似乎很愚蠢......inputStreamWithURL应该可以完成这项工作。我想在自己动手之前看看能不能让它发挥作用。
标签: iphone ios yaml nsinputstream