2011-01-24 22 views
1

Webサービスでzipファイルとして応答します。Tomcat:ファイルの代わりにzipアーカイブとしてのWebServiceレスポンス

一般的に何もするのは難しいことではありません。しかし、私が知りたいことが一つあります: ファイルが非常に大きい(100Mb〜500Mb)場合でも、ファイルをハードディスクに保存せずに圧縮できますか?

今、私はこの素敵なハックを使用しています。そして私は、ファイルシステム上に新しいファイルを作成することなく、を除き、ジッパー機能で拡張したいと思います。

public class TempFileInputStream extends FileInputStream { 

    private File file; 

    public TempFileInputStream(File file) throws FileNotFoundException { 
     super(file); // TO WANT: to pass here already zipped stream 
     this.file = file; 
    } 

    @Override 
    public void close() throws IOException { 
     super.close(); 
     if (!file.delete()) { 
      // baad 
     } else { 
      // good 
     } 
    } 
} 

可能であれば、より良い/最適な方法は何ですか?

ありがとうございました!

答えて

関連する問題