如果通过servelet来读取上传文件路径,则代码如下,我已经在项目中用过了:
DiskFileItemFactory difif = new DiskFileItemFactory(); difif.setSizeThreshold(32*1024);difif.setRepository(new File(tmpDir)); // 用以上工厂实例化上传组件ServletFileUpload sfu = new ServletFileUpload(difif); sfu.setSizeMax(MAX_SIZE); List fileList = sfu.parseRequest(request); if ( fileList == null || fileList.size() == 0) { throw new Exception(" 导入文件不存在,请检 查");} else { File upLoadFile = null; Iterator fileIterator = fileList.iterator(); //得到所有上传的文 件 while (fileIterator.hasNext()) { FileItem fileItem = (FileItem)fileIterator.next(); // 取得上传文件 名 if (fileItem.getContentType() == null) { } else { // 此为路 径 String path = fileItem.getName(); String t_ext = path.substring(path.lastIndexOf(".") + 1); // 根据系统时间生成上传后保存的文件 名 String prefix = String.valueOf(System.currentTimeMillis()); // 保存最终的文件完整路径,保存在工程根目录下的Upload目录 下 String u_name = tmpDir + File.separator + prefix + "." + t_ext; // 开始保存文 件 upLoadFile = new File(u_name); fileItem.write(upLoadFile); } } }
- 相关评论
- 我要评论
-