为了账号安全,请及时绑定邮箱和手机立即绑定

关于servlet3.0文件上传的问题,急

关于servlet3.0文件上传的问题,急

犯罪嫌疑人X 2018-12-04 14:08:54
protected void doPost(HttpServletRequest request, HttpServletResponse response)             throws ServletException, IOException {                   request.setCharacterEncoding("utf-8");         response.setCharacterEncoding("utf-8");        String savePath = request.getServletContext().getRealPath("/images");                   Part part = request.getPart("file");               PrintWriter out = response.getWriter();         out.println("上传成功");         out.flush();         out.close();     }重点是这两句:1 Part part=request.getPart("file");2 String header= part.getHeader("content-disposition");我刚开始在xp上使用的时候,header返回正常:form-data;name="file";filename="0232.png";后来我换了win7怎么返回的filename带路径:form-data; name="file"; filename="F:\图片\0232.png";请问这是怎么回事,是不是和操作系统有关了?我其他的也没改变啊?刚开始学jsp,servlet,不懂?希望大家帮助,谢谢~~~
查看完整描述

2 回答

?
LEATH

TA贡献1936条经验 获得超7个赞

同意楼上的,这个是浏览器的原因,不同的浏览器在向服务器发送上传文件的名称部分时是会存在一些差异的,这个建议取出filename处理后再使用,一般了服务器端都不会太关注这个原始图片名称的,都会根据服务器端规则进行生成相应的文件名称的,所以这个从这个角度来说你可以完全不用管。

查看完整回答
反对 回复 2018-12-08
?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

这个跟服务器没有关系,是浏览器发上来的http报文就是这样的,不同的浏览器有些地方会有差异。装个fiddler抓下包就能看到完整的协议了。

查看完整回答
反对 回复 2018-12-08
  • 2 回答
  • 0 关注
  • 631 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号