jsp,servlet檔案上傳問題完善

2022-09-22 18:13:03 字數 1195 閱讀 2830

1. 上傳檔案時檔名中文亂碼 upload.setheaderencoding("utf-8");

有個疑惑: 不管設定不設定都不亂碼,但是劉帥龍老師講的時候出現了亂碼 .

2. 上傳檔案的目標資料夾必須指定, 若不指定怎麼解決?

1 file file = new file("e:/img");23

if (!file.exists())

67 item.write(new file(file, item.getname()));

3. 上傳檔案至當前伺服器目錄下. 指定目錄為

4. 若檔名相同則會覆蓋原來的, 與實際需求相違 // 隨機生成檔名不帶拓展名

1 string uuid = uuid.randomuuid().tostring(); //

獲取檔案拓展名 (帶點的)

2 string ext = item.getname().substring(item.getname().lastindexof(".")); //

3 system.out.println(ext); //

.jpg

4 // 拼接成完整的檔名

5 string filename = uuid.concat(ext);

5. 指定上傳檔案的大小

1

//指定檔案大小, 超出範圍則向前臺傳送"檔案大小超出範圍20k"

2if (item.getsize() > 1024 * 20)

6. 指定上傳檔案的型別

1

//指定檔案的型別

2if (!(".jpg".equals(ext) || ".png".equals(ext) || ".gif".equals(ext)))

7.獲取普通表單項的值

1

//注意: 由於所有的表單項都以二進位制的形式儲存在了list中, 所以不能採用req.getparameter();2//

的方式獲取普通表單項的值

3if ("uname".equals(item.getfieldname())) 67

if ("age".equals(item.getfieldname()))

1011

if ("score".equals(item.getfieldname()))