知识大全 JSP如何实现文件上传

Posted 文件

篇首语:要真正了解一个人,需在不幸中考察他。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JSP如何实现文件上传相关的知识,希望对你有一定的参考价值。

JSP如何实现文件上传  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  程序如下

>

  package linkman helper;

>

  import java io *;

>

  import java util *;

>

  import javax servlet

>

  import javax servlet

>

  import javax servlet ServletInputStream;

>

  public class UpLoadBean

>

  private String SavePath = null;

>

  private String FileName = null;

>

  private String Sperator = null;

>

  private String ErrMsg = "正常返回";

>

  private byte[] bt = new byte[ ];

>

  private byte[] prebt = new byte[ ];

>

  private int t = ;

>

  private long FileSize = ;

>

  private boolean UserDefineFileName = false;

>

  /////////////////////////////////////////////////

>

  public UpLoadBean ()

>

  FileName = bringFileName ();

>

  

>

  public UpLoadBean (String savepath)

>

  SavePath = savepath;

>

  FileName = bringFileName ();

>

  

>

  /////////////////////////////////////////////////

>

  // 文件名信息

>

  private String bringFileName ()

>

  Calendar dt = Calendar getInstance ();

>

  String str = "" + dt get (Calendar YEAR) + dt get (Calendar MONTH) + dt get (Calendar DAY_OF_MONTH);

>

  str = str + dt get (Calendar HOUR) + dt get (Calendar MINUTE) + dt get (Calendar SECOND);

>

  return str;

>

  

>

  public void setFileName (String filename)

>

  FileName = filename;

>

  UserDefineFileName = true;

>

  

>

  public String getFileName ()

>

  return FileName;

>

  

>

  /////////////////////////////////////////////////

>

  // 上传文件主程序

>

  public boolean UpLoad (HttpServletRequest request) throws Exception

>

  if (SavePath == null)

>

  setErrorMessage ("未设置保存上传文件的路径");

>

  return false;

>

  

>

  request setCharacterEncoding("utf ");

>

  ServletInputStream in = request getInputStream ();

>

  ////////////////////////////////////////////

>

  // 获取得一行的分隔标志

>

  t = in readLine (bt bt length);

>

  if (t != )

>

  Sperator = new String (bt t);

>

  Sperator = Sperator substring ( );

>

  t = ;

>

  

>

  ////////////////////////////////////////////

>

  // 取扩展名并设定文件全名

>

  do

>

  t = in readLine (bt bt length);

>

  String s = new String (bt t);

>

  int index = s indexOf ("filename=\\"");

>

  if (index != )

>

  s = s substring (index + );

>

  index = s indexOf ("\\"");

>

  s = s substring ( index);

>

  index = s lastIndexOf (" ");

>

  if (!UserDefineFileName)

>

  FileName = FileName + s substring (index); // 设定文件全名

>

  

>

  t = ;

>

  

>

   while (t != );

>

  ////////////////////////////////////////////

>

  // 取文件内容

>

  FileOutputStream out = new FileOutputStream (SavePath + "\\\\" + FileName);

>

  t = in readLine (bt bt length);

>

  String s = new String (bt t);

>

  int i = s indexOf ("Content Type:");

>

  if (i == )

>

  setErrorMessage ("上传的不是文件");

>

  return false;

>

   else

>

  in readLine (bt bt length); // 去掉一个空行

>

  t = ;

>

  

>

  boolean state = true;

>

  long trancsize = ;

>

  try

>

  t = in readLine (bt bt length);

>

  while (t != )

>

  s = new String (bt t);

>

  if (s length () > )

>

  s = s substring ( );

>

  if (s equals (Sperator))

>

  break;

>

  

>

  

>

  /*

>

  if (bt[ ] == && bt[ ] == && bt[ ] == && bt[ ] == && bt[ ] == )

>

  break;

>

  

>

  */

>

  if (FileSize != )

>

  if (trancsize >= FileSize)

>

  throw new Exception ("上传文件太大");

>

  

>

  

>

  out write (bt t);

>

  trancsize += t;

>

  t = in readLine (bt bt length);

>

  

>

   catch (Exception e)

>

  state = false;

>

  out close ();

>

  setErrorMessage (e getMessage ());

>

  File tmp = new File (SavePath FileName);

>

  if (!tmp delete())

>

  setErrorMessage (e getMessage () + " 清除未完成");

>

  

>

   finally

>

  if (state)

>

  out close ();

>

  

>

  return state;

>

  

>

  

>

  /////////////////////////////////////////////////

>

  // 上传文件错误信息

>

  public void setErrorMessage (String errormessage)

>

  ErrMsg = errormessage;

>

  

>

  public String getErrorMessage ()

>

  return ErrMsg;

>

  

>

  /////////////////////////////////////////////////

>

  // 文件大小信息

>

  public void setFileSize (long size)

>

  FileSize = size;

>

  

>

  public long getFileSize ()

>

  return FileSize;

>

  

> cha138/Article/program/Java/JSP/201311/20210

相关参考

知识大全 用JSP实现上传文件的两种方法

用JSP实现上传文件的两种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  以前用cos作文件

知识大全 用cos进行文件上传

  在jsp中实现文件上传可用的类库很多比如有著名的jspsmart公司SmartUploadstruts里面也有我这里说说cos它是OReilly公司的OReilly的图书是很错的这个上传的组件也做

知识大全 Java上传文件(简单例子)

Java上传文件(简单例子)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  jsp页面  <

知识大全 jsp上传图片即时显示效果代码

cha138/Article/program/Java/JSP/201311/20450

知识大全 用JSP写出FileUpload上传小程序

用JSP写出FileUpload上传小程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  voi

知识大全 asp 文件上传aspjpeg组件上传文件

cha138/Article/program/net/201311/14386

知识大全 asp限制上传文件大小实例

  一款利用asp文件上传组件把文件上传到服务器之前进行判断文件大小否超过指定大小了本实例讲的是upload_xsoft文件上传组件哦filefilesize>就可以限制文件为多少klishix

知识大全 通用上载组件的原理及实现

  JSP/SERVLET上载的难点  支持任意格式任意数量的文件上载上载控制的实现表单信息的取得即插即用的应用方法我个人认为制约通用上载组件的实现主要是这四个难点    JSP/SERVLET上传的

知识大全 nginx+php上传大文件解决办法

最常用的方法是通过设置nginx的client_max_body_size解决nginx+php上传大文件主要是设置上传文件大小和php脚本运行时长即可用nginx来做webserver的时上传大文件

知识大全 PHP文件上传代码用法

PHP文件上传代码用法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  php文件上传代码编写过程