2013-04-28 114 views
1

我嘗試從我的服務器(NanoHttpd)發送多個文件到我的客戶端(Apache DefaultHttpClient)。 我的方法是通過NanoHttpd的一個響應發送多個文件。
我只能在響應中發送一個InputStream,並且據我所知,我只能對請求使用一個響應。InputStream包含多個文件

我已經嘗試過使用SequenceInputStream,但是這將所有文件合併在一起。
有沒有辦法在一個InputStream中發送多個文件而不合並它們,所以我可以單獨訪問它們?

在此先感謝。

回答

1

您可以在您的響應中使用MIME/Multipart編碼,這是通過HTTP發送多部分結構化內容的標準方式,並且Apache客戶端應該能夠即時解碼(儘管在服務器端,您應該使用庫來產生這種不那麼簡單的編碼)。

另一種方式,可能更簡單,可能是在服務器端發送一個ZIP流:JDK具有對雙方數據進行編碼和解碼的所有內容,請參閱ZipEntry和ZipInputStream/ZipOutputstream。