日期:2014-05-16 浏览次数:20315 次
<form method="post" enctype="multipart/form-data" name="form2"> <table> <tr> <td>上传</td> <td><input type="file" name="file"/>(仅支持.zip格式的压缩文件)</td> </tr> </table> input type="submit" value=" 提交 " onclick="test()"/> </form>
<script type="text/javascript"> function test() { if(form.file.value == "") { alert("请选择文件!");//确定文件框不为空 } else { var path = form.file.value; var name = ".zip"; var c = path.indexOf(name,path.length-4); /* 验证文件的格式是否为.zip方法为检查文件路径的最后四个字符是否为.zip,是的话返回一个大于0的数字(即它们在整个字符串中的位置,如果没有的话则返回-1) */ if(c>=0) { form.action="contest/shengcheng.action"; //设置form表单的action } else { alert("文件格式不正确!"); } } } </script>
private File file; private String fileFileName; //文件名,只是文件名没有路径 public File getFile() { return file; } public void setFile(File file) { this.file = file; } public String getFileFileName() { return fileFileName; } public void setFileFileName(String fileFileName) { this.fileFileName = fileFileName; } public String upload() throws Exception { String root = ServletActionContext.getRequest().getRealPath("/upload");//上传的文件在服务器上保存的路径 File filepath = new File(root); if(!filepath.exists()) filepath.mkdirs(); //判断/tmp目录是否存在,若不存在,创建 InputStream is = new FileInputStream(file); File destFile = new File(filepath,fileFileName); OutputStream os = new FileOutputStream(destFile); byte[] buffer = new byte[400]; int length = 0; while(-1 != (length = is.read(buffer))) { os.write(buffer,0,length); } is.close(); os.close(); return "success"; }