2011-04-07 149 views
0

我需要从服务器下载许多照片和视频。我正在使用cocoaasyncsocket库,我可以通过压缩所有内容并单击一下按钮下载压缩文件来实现此目的。使用一个http请求下载文件并且不压缩

但问题是压缩文件花了很多时间。那么,有什么办法可以下载所有的文件而不用压缩它们。

+0

iPhone应用程序有很多照片和视频启动服务器通过WiFi共享。在客户端的浏览器中打开一个html页面。有下载单个文件的选项,这可以正常工作,因为每个文件都会有一个带有href设置的按钮。还有一个选项可以下载所有图像。但可以有500或更多的图像(或视频)。所以压缩这是需要时间的。不会'tar'类似于zip。 – Sana 2011-04-07 08:37:15

+0

尝试使用nsurlconnection文档,它将使用完整的you.without不压缩下载文件是浪费时间和内存...所以你下载文件,这是压缩文件,并通过minizip类解压缩。 – ajay 2011-04-07 09:01:29

+0

@AAAAAAAAA:但压缩也浪费时间和内存/ CPU。 – Sana 2011-04-07 09:18:46

回答

1

萨那,我错了,zip可以在流中使用:

zip -0 -r - . 

将开始递归从当前目录中存储文件和输出发送到标准输出。您可以捕获标准输出(请参阅popen(3))并立即将其发送给客户端。

+0

谢谢sarnold。我需要检查这个。我在理解和使用linux命令方面很慢。 – Sana 2011-04-07 09:17:23

1

当我创建zip档案需要很长时间但我需要下载多个文件时,我遇到了类似的问题。

救了我是 http://pablotron.org/?cid=1568 邮编流的事情是创建在运行过程中的ZIP档案,而正在下载的类。

大多数实时类创建存档(等待下载启动时),并且只有在完全创建后,才会开始将存档发送给您。该课程在创建时开始发送档案,就像这样您将节省您想要的时间。

+0

感谢您的回复。但是,这是否意味着下载速度会变慢。此请求的回应如何? – Sana 2011-04-07 09:15:38

+0

听起来很完美。 :) – sarnold 2011-04-07 09:24:03