aspose file tools*
The moose likes Java in General and the fly likes Download File Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Java » Java in General
Bookmark "Download File" Watch "Download File" New topic
Author

Download File

Amy Howard
Ranch Hand

Joined: Jul 11, 2002
Posts: 86
My J2EE application enables the users to download files in remote server. I created a stateless session bean which returns a StringBuffer that has the content of the download file. Then I tried to create a temp file to save the content of the file. But the problem is how to read this temp file. I found that it creates different file names use the following code (download****.tmp). Is there a way directly send the StringBuffer to the browse or any editor such as WordPad or NotePad to enable the user to view or download?
// Create temp file.
File temp = File.createTempFile("download", ".tmp");
// Delete temp file when program exits.
temp.deleteOnExit();

// Write to temp file
BufferedWriter out = new BufferedWriter(new FileWriter(temp));
out.write(lines_buffer.toString());
out.close();
Thanks for the help in advance!
Michael Morris
Ranch Hand

Joined: Jan 30, 2002
Posts: 3451
Hi Amy,
Well you could just use a simple swing reader like this:

Michael Morris


Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius - and a lot of courage - to move in the opposite direction. - Ernst F. Schumacher
Amy Howard
Ranch Hand

Joined: Jul 11, 2002
Posts: 86
I solved my problem using temp.getAbsolutePath():
stream = new BufferedInputStream(new FileInputStream(temp.getAbsolutePath()));
Thanks!
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Download File
 
Similar Threads
Signed Applet writing to file
unable to locate the Temporary file
reading a stream twice but download it only once
Creating a Temporary File
BufferedWriter to byte []