daydream000 2014-12-16
有点坑吧,弄这么一个简单的东西弄了一天多,身边还有大神指导着,网上各种百度着。
下面总结一下遇到的问题:
文件上传,在页面上传的时候,不要想着去操作绝对路径,浏览器会对客户端的信息进行保护,避免用户信息收到攻击。
在上传图片,或者文件时,使用form表单来操作。
前台通过form表单传输一个流到后台,而不是ajax传递参数到后台,代码如下:
<form action="/tools/excel-upload.action" method="post" enctype="multipart/form-data"> <!-- enctype="multipart/form-data" 文件上传使用 --> <input type="file" name="fileupload" /> <input type="submit" value="UpLoad"> </form>
后台:
private File fileupload; public static boolean copyFile(File oldPathFile, String newPathFile) throws IOException { int bytesum = 0; int byteread = 0; if (oldPathFile.exists()) { // 文件存在时 InputStream inStream = new FileInputStream(oldPathFile); // 读入原文件 FileOutputStream fs = new FileOutputStream(newPathFile); byte[] buffer = new byte[FILEBYTE]; while ((byteread = inStream.read(buffer)) != -1) { bytesum += byteread; // 字节数 文件大小 fs.write(buffer, 0, byteread); } fs.flush(); fs.close(); inStream.close(); return true; }else{ return false; } }