首页 > 编程 > JSP > 正文

用JSP编写文件上传的详细教程

2024-09-05 00:18:06
字体:
来源:转载
供稿:网友

  今天小编给大家分享一篇用JSP编写文件上传的详细教程,感兴趣的朋友跟小编一起来了解一下吧!

  如果你曾用VB编写文件上传的组件的话,那么用JAVA编写文件上传的JAVABEAN十分容易。

  下面的例子只是一个简版

  package yuanyifileup;

  import java.io.*;

  import java.util.*;

  import javax.servlet.*;

  import javax.servlet.http.*;

  import javax.servlet.jsp.PageContext;

  public class yuanyifileup

  {

  private ServletRequest request;

  private ServletResponse response;

  private ServletConfig config;

  ServletInputStream DATA;

  int FormSize;

  File f1;

  FileOutputStream os;

  DataInputStream is;

  String filename;

  byte[] b;

  byte t;

  boolean flag=false;

  public yuanyifileup()

  { }

  public void initialize(ServletConfig config,HttpServletRequest request,HttpServletResponse response) throws IOException

  {

  this.request=request;

  this.response=response;

  this.config=config;

  DATA = request.getInputStream();

  FormSize=request.getContentLength();

  }

  public void initialize(PageContext pageContext) throws IOException

  {

  request=pageContext.getRequest();

  response=pageContext.getResponse();

  config=pageContext.getServletConfig();

  DATA = request.getInputStream();

  FormSize=request.getContentLength();

  }

  public boolean setFilename(String s)

  {

  try

  {

  File f1=new File(s);

  os=new FileOutputStream(f1);

  }

  catch(IOException e)

  {return(false);}

  return(true);

  }

  public void getByte()

  {

  int i=0;

  try

  {

  is=new DataInputStream(DATA);

  b=new byte[FormSize];

  while (true)

  {

  try

  {

  t=is.readByte();

  b[i]=t;

  i++;

  }

  catch(EOFException e)

  { break;}

  }

  is.close();}

  catch(IOException e)

  {}

  }

  public boolean save()

  {

  int i=0,start1=0,start2=0;

  String temp="";

  if (!flag)

  {

  getByte();

  flag=true;

  }

  try

  {

  temp=new String(b,"ISO8859_1");

  }

  catch(UnsupportedEncodingException e)

  {return(false);}

  start1=temp.indexOf("image/");

  temp=temp.substring(start1);

  start1=temp.indexOf("rnrn");

  temp=temp.substring(start1+4);

  start2=temp.indexOf(";rn");

  if (start2!=-1)

  {

  temp=temp.substring(0,start2);

  }

  try

  {

  byte[] img=temp.getBytes("ISO8859_1");

  for (i=0;i;i++)

  { os.write(img[i]); }

  os.close();

  }

  catch(IOException e)

  {return(false);}

  return(true);

  }

  如果有不明白的发E-Mail:yymailbox@263.net.Bye

  }

  以上就是用JSP编写文件上传的详细教程,想必都了解了吧,更多相关内容请继续关注错新技术频道。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表