【发布时间】:2012-11-02 14:12:40
【问题描述】:
Servlet doPost 处理文件上传,
InputStream in = req.getInputStream();
File file = new File("c:/8.dat");
OutputStream out = new FileOutputStream(file);
byte[] buffer = new byte[1024];
int len =0;
while((len=in.read(buffer))!=-1){
out.write(buffer, 0, len);
}
bao.close();
out.close();
in.close();
Dose Request 的getInputStream 方法获取http 头信息?
为什么上传的文件比原来的大?
【问题讨论】:
-
getInputStream 返回一个流,您可以从中读取请求正文(或在您的情况下上传的文件),HTTP 标头不包含在流中,它们由框架处理,您可以获得Request 对象中的那些标头。
-
不,我检查了上传的文件,文件头有http头信息..
-
我不知道
file-header是什么,唯一可以确定的是req.getInputStream()返回的流中不包含HTTP 标头。 我假设 'req' 是 ServletRequest 的一个实例或 JSP 中的请求对象。
标签: java servlets file-upload