Jakarta Commonsライブラリを使うことでファイルアップロードサイトを簡単に作ることができる.
1.Jakarta CommonsのfileuploadクラスをGet!する.
2.ファイルをクラスパスに置く.
3.以下のようなプログラムを書けばよい.
サンプルプログラム抜粋
import org.apache.commons.fileupload.*;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//保存するファイルパス
String savePath = "c:\temp";
//ファイルオブジェクト作成
File directory = new File(savePath);
//アップロードオブジェクトの作成
DiskFileUpload up = new DiskFileUpload();
//最大ファイルサイズの設定
up.setSizeMax(1000000);
//マルチパートリクエストか否か
if(up.isMultipartContent(request)){
try {
//リクエストをリストに保存
List list = up.parseRequest(request);
for (Iterator it = list.iterator();it.hasNext();) {
//リクエストの取り出し
FileItem fItem = (FileItem) it.next();
//通常のフォームからのデータでない場合
if(!fItem.isFormField()){
//ファイル名を入手
String uploadedName = new File(fItem.getName()).getName();
File saveFile = new File(directory,uploadedName);
//ファイル書き出し
fItem.write(saveFile);
}
}
} catch (FileUploadException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}aa