Welcome to Yumao′s Blog.
之前有使用過這方面的東西
所以先記下來以備以後所需吧
相對與表單的上傳而言
<form action="#" method="post" enctype="multipart/form-data"> <input name="uploadFile" type="file"> </form>
在file文件上傳的時候會傳輸三個對象在Action中
一個是File對象 例如此例中的uploadFile
另外還有兩個String對象
一個是<File>ContentType 內容爲文件類型 例如本例子中的uploadFileContentType
一個是<File>FileName 內容爲文件名稱 例如本例子中的uploadFileFileName
然後以下是上傳文件實例代碼
String filePath = "/tmp/test"; File savefile = new File(new File(filePath),uploadFileName); //如果没有文件夹则建立 if (!savefile.getParentFile().exists()){ savefile.getParentFile().mkdirs(); } FileUtils.copyFile(uploadFile, savefile);
下載文件代碼
//僅需在action中添加需要下載的inputStream即可 public InputStream getInputStream() throws Exception { return new java.io.FileInputStream("/tmp/test"); }
最重要的是struts.xml中的一系列設置
<!-- 允許上傳文件的最大字節數。默認值爲2097152(2M) 設置在package之前 --> <constant name="struts.multipart.maxSize" value="20971520"/> <!-- 下載文件方面 在action中return "downloadFile" --> <result name="downloadFile" type="stream"> <param name="contentType">text/plain</param> <param name="inputName">inputStream</param> <param name="contentDisposition">attachment;filename="log.txt"</param> <param name="bufferSize">4096</param> </result>