loading ...
loading...

2008-07-03 | 附件上传下载方法总结

分享
标签: 附件 

1.界面不限制增加附件

 <tr bgcolor="#f7f7f7">
  <td class="efLb" >
    <img border=0 src="img/icon_att.gif"><a href="javascript: addFile()">添加附件:</a>
  </td>
  <td class="efEditRight" nowrap="nowrap" style='width:600;word-break:break-all;'>
   <div id="fileBlock" style="left:auto"></div>  
  </td>
 </tr>

<script language="javascript">
function addFile()
{
    var fileName = "filenames";
    var fileBlock = document.getElementById("fileBlock");
    var oDiv = document.createElement("div");
 oDiv.innerHTML = "<input type=\"file\" name=\"" + fileName + "\"   /> "
                          + "<img  onClick=\"delFile(this)\" src=\"img/clear.gif\" border='0' alt='删除'/>";
   
    fileBlock.appendChild(oDiv);
}

function delFile(obj)
{
    var oDiv = obj.parentNode;
    var fileBlock = document.getElementById("fileBlock");
    fileBlock.removeChild(oDiv);
}
</script>

2.保存:

A.保存到数据库表里

   //附件
    String sqlFTT ="";
    if (files.getCount()>0)
    {
     //保存附件
     
     for(int i=0;i<files.getCount();i++)
     { 
      if(files.getFile(i).getFileName()==null||files.getFile(i).getFileName().equals(""))
      {}
      else{
       String seqn_num_f=String.valueOf(SeqUtil.getNextValue("eloa","pub_seqn_num","t_info_file"));//附件ID
       List list1 = new ArrayList();
       list1.add(seqn_num_f);  //主键的值
       String[] cndnamea=new String[1];
       sqlFTT = "insert into t_info_file(rgid,seqn_num,file_name,infor_seqn) values('"+RGID[0]+"','"+seqn_num_f+"','"+files.getFile(i).getFileName()+"','"+infor_seqn_a+"')";
       dbMng.executeUpdate(sqlFTT,new ArrayList()); 
       cndnamea[0]="seqn_num";  //对应的主健T_samp_fileFILE_PIC FILE_NAME
       dbMng.updateBlob("t_info_file","file_pic",cndnamea,list1,"",files.getFile(i).getInputStream());
      }
     }
    }

B.保存到指定路径

<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" /><!--上载文件BEAN-->
<%  mySmartUpload.initialize(pageContext);
    mySmartUpload.setTotalMaxFileSize(commonClass.MSG_FILE_SIZE); 
    mySmartUpload.upload();

   String file1 = "";
   if(mySmartUpload.getFiles().getCount()>0)
   {
     for(int k=0;k<mySmartUpload.getFiles().getCount();k++)
  {
   file1=mySmartUpload.getFiles().getFile(k).getFileName();//获得文件名
   if (file1.compareTo("")!=0)
   {
    fileTotal = fileTotal+seqn_num+file1 + ":";
   }
   if(mySmartUpload.getFiles().getFile(k).getSize()>0)
   {
    mySmartUpload.getFiles().getFile(k).saveAs("../"+contextRoot+"/znxx/upload/"+seqn_num+mySmartUpload.getFiles().getFile(k).getFileName());
     }
  }
   }

%>

3.界面显示

A.保存到数据库表里

    <%
   String weblj ="";
   int j=0;
        
 if(rs.getRowCount()>0)
 {
  for(int i=0;i<rs.getRowCount();i++)
  {
   j++;
   
   String seqn_numF= rs.getCell(i,0);
   String FileName = rs.getCell(i,1); 
   String url = "sysmng.download.do?subSys=eloa&uploadID=up_info_file&keyPairs=SEQN_NUM:"+seqn_numF+"&disposition=attatchment;&fileName="+URLHelper.urlEncode(FileName,true)+"";
   weblj =" <a  href="+url+">"+FileName+" </a>"; 

 %>
    <tr bgcolor="#f7f7f7" onMouseOver="this.style.backgroundColor='#e0ffe0'" onMouseOut="this.style.backgroundColor = ''">
      <td align="right" width="18%">附件<%=j%>:</td>
      <td colspan="3"><img border=0 src="images/icon_att.gif"><%=weblj%> </td>
    </tr>
    <%
     } 
 } 
%>

B.保存到指定路径:

    <%

  int count = 0;
  String[] strMembers = null;
     if(file_name.compareTo("")!=0)
 {
    CutStrings CUTSTR = new CutStrings();
    CUTSTR.initData(file_name,":");
       strMembers=CUTSTR.getMembers();
       count=CUTSTR.getCountToken();
  }

   int j=0;
      for (int i=0;i<count;i++)
      {
    j++;
    String filename =strMembers[i];
    if(filename.startsWith(msg_seqn)){
    filename=filename.substring(msg_seqn.length(),filename.length());
    }
    String weblj = "<a href=down.jsp?seqnfilename="+URLHelper.urlEncode(strMembers[i],true)+"&filename="+URLHelper.urlEncode(filename,true)+"&savename=myfile"+j+">"+filename+"</a>";
 %>
    <tr bgcolor="#f7f7f7" onMouseOver="this.style.backgroundColor='#e0ffe0'" onMouseOut="this.style.backgroundColor = ''">
      <td align="right">附件<%=j%>:</td>
      <td width="67%"><%=weblj%>
      </td>
    </tr>

<%
      }  
%>

分享 分享 |  评论 (0) |  阅读 (?)  |  固定链接 |  类别 (java) |  发表于 16:31
搜狐博客温馨提示:搜狐博客官方不会要求参加活动的各位博友缴纳任何的手续费用。请勿轻信留言、评论中的中奖信息,更不要拨打陌生电话及向陌生帐户汇款,谨防受骗!识别更多网络骗术,请 点击查看详情
您还未登录,只能匿名发表评论。或者您可以 登录 后发表。
 
  *中国人爱国心,搜狗输入法爱国主题皮肤下载>>
表  情:
加载中...
回复通知: 同时用小纸条通知对方该回复