Marcello Soffritti wrote:
>
> But you could use a very simple HTML form like this:
> <FORM ACTION="..." ENC_TYPE="multipart/form-data">
> <INPUT TYPE="file" NAME="userfile">
> </FORM>
> If you want use an Applet:
> - open a socket to the server (port 80)
> - send an http request to get filename.cgi with post method and
> enctype multipart/form-data
> - open a stream to the local file and send it to the socket
Maybe also some Servlet-code to decipher the file once you uploaded the
file:
String boundary = request.getContentType();
if (boundary.startsWith("multipart/form-data")) {
try {
boundary = "--" + boundary.substring(boundary.indexOf("boundary=") +
9);
StringBuffer buffer = new StringBuffer();
BufferedReader in = request.getReader();
String tmp;
String naam = "";
while ((tmp = in.readLine()) != null) {
if (tmp.equals(boundary + "--")) {
tmp = buffer.toString().substring(0, buffer.length() -
1);
// remark: I put everything in a
SessionContainer-object which is a
kind of Hashtable
// You can choose to do this otherwise
sessionContainer.put(naam, tmp);
buffer = new StringBuffer();
}
else if (tmp.equals(boundary)) {
if (! naam.equals("")) {
tmp = buffer.toString().substring(0,
buffer.length() - 1);
sessionContainer.put(naam, tmp);
buffer = new StringBuffer();
}
tmp = in.readLine();
naam = tmp.substring(tmp.indexOf(" name=") + 7);
naam = naam.substring(0, naam.indexOf('"'));
while (! (tmp = in.readLine()).equals("")) {}
}
else if (! tmp.equals("")) {
buffer.append(tmp + "\n");
}
}
}
catch (IOException ioe) {
sessionContainer.put("IOException", ioe.getMessage());
}
catch (StringIndexOutOfBoundsException sioobe) {
sessionContainer.put("StringIndexOutOfBoundsException",
sioobe.getMessage());
}
}
--
-------------------------------------------------------------------
Bruno Lowagie Academisch Rekencentrum Universiteit Gent
Tel : 09/264.48.14 e-mail : [EMAIL PROTECTED]
-------------------------------------------------------------------
___________________________________________________________________________
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff SERVLET-INTEREST".
Archives: http://archives.java.sun.com/archives/servlet-interest.html
Resources: http://java.sun.com/products/servlet/external-resources.html
LISTSERV Help: http://www.lsoft.com/manuals/user/user.html