⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 file.jsp

📁 这是一个关于J2EE的开源包common里的许多组件的示例应用程序,可以借鉴.
💻 JSP
字号:
<%@ page contentType="text/html;charset=GB2312" language="java" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="org.apache.commons.fileupload.*" %>

<% 
	// 申明将上传文件放到服务器的 / .... /upload 目录中 
    String saveDirectory = "c:\\log\\";
    // 申明临时目录
    String tmpDirectory = "c:\\";
    // 申明限制上传文件总大小为, 单位为 byte, -1 表示无限制
    int maxPostSize = 1024 * 1024; 
%>
<%
    // 申明储存叙述上传文件内容的变量	
    String FileDescription = null; 
    // 申明储存上传文件名称的变量
    String FileName = null;
    // 申明储存上传文件大小的变量
    long FileSize = 0;
    // 申明储存上传文件类型的变量
    String ContentType = null;
    // 计算上传文件之个数
    int count = 0 ;
%>

<%	
    DiskFileUpload upload = new DiskFileUpload();
    
    // 设置内存存放数据的大小, 超过则写入文件, 有设定临时目录, 临时文件置于临时目录下
    upload.setSizeThreshold(4096);
    
    // 设置总上传大小限制
    upload.setSizeMax(maxPostSize);
    
    // 设置临时目录
    upload.setRepositoryPath(tmpDirectory);
    /* FileItem */ 
    List items = upload.parseRequest(request);
%>
<body>
<% 
	Iterator iter = items.iterator();
	
    int tmp = 0;
    FileItem tmpItem = null;
	while (iter.hasNext()) 
	{ 
        tmp++;
        FileItem item = (FileItem) iter.next();
        
        if (item.isFormField()) {
        // 如果是一般栏位, 取得文件叙述
        
            FileDescription = item.getString();
            
        } else {
        // 否则取得文件信息
        
            FileName = item.getName();
			
		// 因为不同的浏览器会造成传递 path + filename, 有些则只有 filename
  try {
   // for wintel platform
    FileName = FileName.substring(FileName.lastIndexOf("\\")+1);
	 // for unix-like platform
    FileName = FileName.substring(FileName.lastIndexOf("/")+1); 
  } catch ( Exception ex ) {
	out.println(ex);
  }


            ContentType = item.getContentType();
            FileSize = item.getSize();
            tmpItem = item;        
        }
        
        // 因为一个文件都是两个栏位, 每读取两个栏位处理一次
		if (tmp == 2 && FileSize != 0)
		{ 
			count ++;

%>
<font color="red">你上传的第<%= count %>个的文件:</font><br>
文件名称为:<%= FileName %><br>
文件大小为:<%= FileSize %> Bytes<br>
文件类型为:<%= ContentType %><br>
文件的叙述:<%= FileDescription %><br><br>

<%
           // 将文件写入存档目录
   try {
      out.println(FileName);
      File uploadedFile = new File(saveDirectory + FileName);
      tmpItem.write(uploadedFile);
   } catch ( Exception ex ) {
      out.println(ex);
    }
            
            tmp = 0;
        } else if (tmp == 2 && FileSize == 0) {
            tmp = 0;
		} // end if 
	} // end while
%> 
您总共上传<font color="red"><%= count %></font>个文件
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -