Jsp herunterladen Dateigröße
Frage
Wir laufen tomcat, und wir PDF-Dateien on the fly generieren. Ich habe nicht die Dateigröße vor der Hand, so kann ich nicht direcly in eine Datei verlinken auf dem Server. So direkt ich die Ausgabe senden.
response.setContentType("application/force-download");
OutputStream o = response.getOutputStream();
Und dann habe ich auf diesen Output direkt ausgegeben.
Das einzige Problem ist, dass der Empfänger nicht die Dateigröße nicht erhalten, so dass sie nicht wissen, wie lange der Download stattfinden wird. Gibt es einen Weg, um die Antwort zu sagen, wie groß die Datei ist?
Bearbeiten Ich weiß, die Dateigröße, ich kann nicht einfach den STREAM sagen, wie groß die Datei ist.
Lösung
Andere Tipps
serialisiert den PDF-Byte-Stream in eine Datei oder in einem Byte-Array seine Größe berechnen, legen Sie die Größe und schreiben Sie es in den Ausgabestream.
Ich glaube, Sie, die Frage zu beantworten sind selbst: Zitat: Ich habe nicht die Dateigröße vor der Hand habe, so dass ich direkt die Ausgabe senden.
Wenn Sie nicht über die Größe haben, man kann es senden ....
Warum die PDF-Datei in zu temporärem Dateisystem oder RAM-Basis-Dateisystem oder Speicher-Map-Datei on the fly nicht erzeugen. dann können Sie die Dateigröße erhalten.
response.setContentType ( "application / force-download"); response.setContentLength (sizeHere); Output o = response.getOutputStream ();