package sample.pg;
import javax.servlet.http.*;
import org.apache.struts.action.*;
import org.apache.struts.upload.FormFile;
import java.io.*;
public class UploadAction extends Action {
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception {
// 配列、コレクションデータをアクションフォームに設定
DynaActionForm inform = (DynaActionForm)form;
FormFile filedata = (FormFile)inform.get("fileData");
// 受信ファイルを取得
String fileName = filedata.getFileName();
// 入力ストリームのバッファリング
InputStream in = filedata.getInputStream();
BufferedInputStream inBuf = new BufferedInputStream(in);
// 出力ストリームをバッファリング
OutputStream out = new FileOutputStream("c:\\temp\\" + fileName);
BufferedOutputStream outBuf = new BufferedOutputStream(out);
// 受信ファイルを「c:\temp\受信ファイル名」で出力
int data = 0;
while( (data = inBuf.read()) !=-1) {
outBuf.write( data);
}
outBuffer.flush();
outBuf.close();
inBuf.close();
// 一時領域の受信ファイル情報を削除
filedata.destroy();
return mapping.findForward("success");
}
}
|