ファイルアップロードプログラム

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