JavaWeb上传下载文件

 
下载:请求<a href='do_download.jsp?dfilename=url'>下载</a>

 

<%@ page contentType="text/html;charset=gb2312" import="com.jspsmart.upload.*,java.util.*" %>
<%request.setCharacterEncoding("UTF-8");%>
<% 
String dfilename=request.getParameter("dfilename");
//out.print("HI");
// 新建一个SmartUpload对象 
SmartUpload su = new SmartUpload(); 
// 初始化 
su.initialize(pageContext); 
su.setContentDisposition(null); //禁止浏览器自动打开
// 下载文件 
    try{
      su.downloadFile(""+dfilename); 
    }catch(Exception e){
                   out.print("<script>alert('下载文件不存在!');</script>");
                }
%> 

 

 

上传:

 

<%@page contentType="text/html; charset=GBK" import="java.text.SimpleDateFormat,java.util.*"  %>

<%@ page import="org.dias.basic.*,org.dias.filesender.*"%>
<%@ page import="org.dias.deploy.*,org.dias.log.*,java.io.*,java.util.*,java.lang.*,java.nio.*,org.dias.database.*"%>
<%@ page import="java.sql.*,oracle.sql.BLOB"%>
<HTML>
<HEAD>
<TITLE>模版文件定义</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<script language="JavaScript"
   src="<%=request.getContextPath()%>/interface4j/DIASClientActive/scripts/basic/operation.jse">
</script>
<script language="JavaScript"
   src="<%=request.getContextPath()%>/interface4j/DIASClientActive/scripts/basic/object.jse">
</script>

 <%
    Calendar c = Calendar.getInstance();   
    SimpleDateFormat simpleDateTimeFormat1  =   new  SimpleDateFormat("yyyyMMdd");
    
    c  =  Calendar.getInstance(Locale.CHINESE);  
  
    String sys_year = simpleDateTimeFormat1.format(c.getTime()) ; 
    
%>

  <input type="hidden" value="<%=sys_year %>" id="sys_year">
<%
 request.setCharacterEncoding("UTF-8");
 Constants cs = new Constants();
 String da=cs.getSequencePadValue();
 String filepath = request.getParameter("filepath");
 String SYSDATE = request.getParameter("d");
 String de = request.getParameter("de");   
 //String flowid = request.getParameter("flowid");

 //String table_name=request.getParameter("table_name");
 

 String dd=request.getParameter("da");
 String excelpath="";
 if (filepath!=null)
 {
  filepath =filepath+"\\\\NoticeUpload\\\\";
  //out.print(filepath);
  LoadDeployDatabase server = LoadDeployDatabase.getInstance();
  if (server.getDBEncoding()){//确定WEB Server是否需要进行中文编码;  
   Encoding endoding = new Encoding();
   filepath = endoding.changeEncoding(filepath,Constants.DB_CHARACTER,Constants.PAGE_CHARACTER);
  }
  //WriteLog.println("***"+filepath);
  InputStream iso = request.getInputStream();
  int FormSize = request.getContentLength();
  //out.println("alert('"+String.valueOf(FormSize)+"');");
    DataInputStream dis = new DataInputStream(iso);
   String filename="";
  byte[] b;
  byte t;
  int i=0; 
  String outStr="";
  try{
   b=new byte[FormSize];
   while (true){
    try{
     t=dis.readByte();
     b[i]=t;
     i++;     
    }catch(EOFException e){ 
     break;
    }
   }
   //outStr = new String(b);
   outStr = new String(b,"ISO8859_1");
   
   String headStr1="";
   int hPoint = outStr.indexOf("\n");
   if (hPoint!=-1){
    headStr1 = outStr.substring(0,hPoint-1);   
    //out.println("alert('"+headStr1+"');");
   }
   outStr = outStr.substring(hPoint+1,outStr.length());
   hPoint = outStr.indexOf("\n");
   if (hPoint!=-1){
    String headStr2 = outStr.substring(0,hPoint-1);
    headStr2 = new String(headStr2.getBytes("ISO8859_1"),"GBK");
    int fPoint = headStr2.indexOf("filename=\"");
    String cFilePath = headStr2.substring(fPoint+10,headStr2.length()-1); 
    int fextPoint = cFilePath.lastIndexOf("\\");
    if (fextPoint==-1){
     fextPoint = cFilePath.lastIndexOf(Constants.FILE_SEPARATOR);//---"/";
     if (fextPoint==-1){
      filename = cFilePath;
     }else{
      filename = cFilePath.substring(fextPoint+1,cFilePath.length());
     }
    }else{
     filename = cFilePath.substring(fextPoint+1,cFilePath.length());     
    }
    //WriteLog.println("alert('"+headStr2+"');");
    //WriteLog.println("alert('"+filename+"');");
    //out.println(filename);
   }
   outStr = outStr.substring(hPoint+1,outStr.length());
   hPoint = outStr.indexOf("\n");
   if (hPoint!=-1){
    String headStr3 = outStr.substring(0,hPoint-1);//-1  
   }
   outStr = outStr.substring(hPoint+3,outStr.indexOf(headStr1)-2);
   //WriteLog.println("WWW:"+filepath+filename);
  }catch(IOException e){
   WriteLog.println(e);
  }
  finally{
   dis.close();
   iso.close();
  }
  //FileOutputStream fos = new FileOutputStream(filepath+de+filename);
  FileOutputStream fos = new FileOutputStream(filepath+de);
  //FileOutputStream fos = new FileOutputStream(filepath+filename);
  excelpath=filepath+de+filename;
  //out.print(de+"<br>");
  //out.print("alert("+filename+");");
  try{    
   fos.write(outStr.getBytes("ISO8859_1"));//ISO8859_1;
  }catch(IOException e){
    WriteLog.println(e);
  }finally{
   fos.close();
  }
 }
%>
<style type="text/css">
  td {
   font-size: 13;
  }
</style>
<body  style="padding:0px;margin:0px;">
 <br><center>
 <form name="myform" action="" method="post" enctype="multipart/form-data" >
  <table>
   <tr>
    <td align="left" width="100%"><input type="file" style="width:250px;" id="uploadfile" οnchange="getName()"  name="uploadfile" />文件名称:<input type="text" style="width:120px;" id="name"><input type="button" value="上传" οnclick="changeP()"></td>
   </tr>   
  </table>
  <input type="hidden" name="filepath" value="<%=filepath%>" />
  <input type="hidden" name="cur_da" value="<%=da%>" />
  <input type="hidden" name="cur_dirpath"  value="<%=Constants.WEBROOT_DIR%>" />
 </form>
 </center>
 <script language="JavaScript">
  var xpo=new createXMLPOSTObject();//创建xml通讯对象
  var webroot="<%=request.getContextPath()%>";
  
  function changeP(){
       var webpath=document.getElementById("cur_dirpath").value;//服务器路径
    var file=document.getElementById("uploadfile");//文件路径
   var name=document.getElementById("name").value;
   if(name==""){
      alert("文件名称不能为空!");return;
   }
 
    var sys_year=document.getElementById("sys_year").value;
    //if(!(file.value.substring(file.value.lastIndexOf("."))==".doc"||file.value.substring(file.value.lastIndexOf("."))==".docx"||file.value.substring(file.value.lastIndexOf("."))==".excel"||file.value.substring(file.value.lastIndexOf("."))==".gif"||file.value.substring(file.value.lastIndexOf("."))==".png"||file.value.substring(file.value.lastIndexOf("."))==".jpg"))
   //{
    //alert("请选择正确格式的文件!");
    //file.focus();
    
    //return;
   //}
   file=file.value;
   if(file==""){
     alert("请选择上传文件!");return;
   }
   var index=file.lastIndexOf("\\");
   file=file.substring((index+1),file.length);
   var da=document.getElementById("cur_da").value;//随机数
   //da=sys_year+da.substring(0,8);
   webpath=webpath.replace(/\\/g,'\\\\');
   var FILEPATH=webpath+"\\\\FileUpload\\\\"+da+file;//存储路径
   var ab = new Operation(); //创建实例;
   var d=ab.getSystemFormatDateTime("-",":");
   var de=oper.getSystemDateTime();
   //var myimg = '/NoticeUpload/'+de+file;
   //
   
   
     de=de+file.substring(file.lastIndexOf("."));
     var myimg = '/NoticeUpload/'+de;
   //alert(file);
   //alert(de);
   //alert("myimg"+myimg);
      //parent.document.getElementById("path").value=myimg;
   //parent.document.getElementById("name").value=da+file;
   parent.onLoadArr[parent.onLoadArr.length]=new Array(myimg,name);

   document.getElementById("uploadfile").value=myimg;
   myform.action="upload1.jsp?filepath="+webpath+"&d="+d+"&da="+da+"&de="+de;
   
   //alert(de+file);
   myform.submit();
  }
  
  function getName(){
     var file=document.getElementById("uploadfile").value;//文件路径
     //alert(file.indexOf("."));
     //alert(file.lastIndexOf("."));
     //alert(file.lastIndexOf("\\"));
    // alert());
     document.getElementById("name").value=file.substring((file.lastIndexOf("\\")+1),file.lastIndexOf("."));
    // file.indexof(.);
  }

 </script>
</body>
</html>

太麻烦了!!!
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值