我如何使用目标c在mac os x中从互联网上下载文件我在copyItemAtURL:toURL:error:
中尝试使用NSFileManager
方法,但没有用。域名是公共的,因此无需身份验证。
答案 0 :(得分:1)
NSFileManager
不支持HTTP网址。您需要使用NSURLConnection
类来执行HTTP请求。
如果要执行同步HTTP请求(例如,对于控制台应用程序或GUI应用程序的后台线程),则基本工作流程为:
NSURLRequest
+[NSURLConnection sendSynchronousRequest:returningResponse:error:]
-[NSFileManager createFileAtPath:contents:attributes:]
,将结果NSData
保存到您想要的目标文件中。如果您需要执行异步请求,则会更复杂一些。在这种情况下,您将创建一个符合NSURLConnectionDelegate
协议的对象,将其设置为NSURLConnection
对象的委托,并执行请求。完成后,然后将其保存到文件系统中,如上所述。详细信息留给读者练习。