jspsmartupload.jar 可以處理下載時中文亂碼問題。把壓縮包里面的jar拷貝到工程的lib下面即可
主要方法" />
官方關(guān)閉了 現(xiàn)在這個包不好找,拿出來共享一下,希望可以方便大家
jspsmartupload.jar 可以處理下載時中文亂碼問題。把壓縮包里面的jar拷貝到工程的lib下面即可
主要方法介紹
上傳
// 新建一個SmartUpload對象
SmartUpload su = new SmartUpload();
// 上傳初始化
su.initialize(pageContext);
// 限制每個上傳文件的最大長度。
su.setMaxFileSize(10000);
// 限制總上傳數(shù)據(jù)的長度。
su.setTotalMaxFileSize(20000);
// 設(shè)定允許上傳的文件(通過擴展名限制),僅允許doc,txt文件。
su.setAllowedFilesList("doc,txt");
// 設(shè)定禁止上傳的文件(通過擴展名限制),禁止上傳帶有exe,bat,
//jsp,htm,html擴展名的文件和沒有擴展名的文件。
su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上傳文件
su.upload();
// 將上傳文件全部保存到指定目錄
int count = su.save("/upload");
下載
// 新建一個SmartUpload對象
SmartUpload su = new SmartUpload();
// 初始化
su.initialize(pageContext);
// 設(shè)定contentDisposition為null以禁止瀏覽器自動打開文件,
//保證點擊鏈接后是下載文件。若不設(shè)定,則下載的文件擴展名為
//doc時,瀏覽器將自動用word打開它。擴展名為pdf時,
//瀏覽器將用acrobat打開。
su.setContentDisposition(null);
// 下載文件
su.downloadFile("/upload/test.doc");
**********************************************************************************************************************
應(yīng)用實例:
用戶只能上傳圖片格式的文件實例
uploadimage.jsp
<%@ page contentType="text/html;charset=gb2312" language="java" import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,java.sql.*,com.jspsmart.upload.*,java.util.*"%>
<%
SmartUpload mySmartUpload =new SmartUpload();
long file_size_max=4000000;
String fileName2="",ext="",testvar="";
String url="upload/"; //應(yīng)保證在根目錄中有此目錄的存在(也就是說需要自己建立相應(yīng)的文件夾)
//初始化
mySmartUpload.initialize(pageContext);
//只允許上載此類文件
try {
mySmartUpload.setAllowedFilesList("jpg,gif");//此處的文件格式可以根據(jù)需要自己修改
//上載文件
mySmartUpload.upload();
} catch (Exception e){
%>
<%
}
try{
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
if (myFile.isMissing()){%>
<%}
else{
//String myFileName=myFile.getFileName(); //取得上載的文件的文件名
ext= myFile.getFileExt(); //取得后綴名
int file_size=myFile.getSize(); //取得文件的大小
String saveurl="";
if(file_size<file_size_max){
//更改文件名,取得當(dāng)前上傳時間的毫秒數(shù)值
Calendar calendar = Calendar.getInstance();
String filename = String.valueOf(calendar.getTimeInMillis());
saveurl=application.getRealPath("/")+url;
saveurl+=filename+"."+ext; //保存路徑
myFile.saveAs(saveurl,SmartUpload.SAVE_PHYSICAL);
out.print(saveurl);
String ret = "parent.HtmlEdit.focus();";
ret += "var range = parent.HtmlEdit.document.selection.createRange();" ;
ret += "range.pasteHTML('');" ;
ret += "alert('上傳成功!');";
ret += "window.location='upload.htm';";
out.print("");
}
}
}catch (Exception e){
out.print(e.toString());
}
%>
upload.htm
以上代碼可以粘貼直接使用,局部的地方可以根據(jù)自己的需要進行修改