如何获取form表单下file的路径
这是html的代码:<inputtype="file"name="picture"size="34">这是在jsp中获取的代码(不是用serverlet,获取暂时还没学)...
这是html的代码:<input type="file" name="picture" size="34">
这是在jsp中获取的代码(不是用serverlet,获取暂时还没学):
<%String pic = request.getParameter("picture"); %>
获取到的只是文件的名字,我要的是文件的路径, 然后给它上传到服务器上.. 展开
这是在jsp中获取的代码(不是用serverlet,获取暂时还没学):
<%String pic = request.getParameter("picture"); %>
获取到的只是文件的名字,我要的是文件的路径, 然后给它上传到服务器上.. 展开
1个回答
展开全部
确认:
1.是以post方式提交的的吗
2.有无 :enctype= "multipart/form-data "
表单上传如果不加enctype= "multipart/form-data ",上传文件时使用默认编码application/x-www-form-urlencoded,不能用于文件上传,而添加后设置编码为MIME编码才能完整上传。还有就是天加了enctype= "multipart/form-data "不能使用request.getParameter("fileName")来获取表单元素
1.是以post方式提交的的吗
2.有无 :enctype= "multipart/form-data "
表单上传如果不加enctype= "multipart/form-data ",上传文件时使用默认编码application/x-www-form-urlencoded,不能用于文件上传,而添加后设置编码为MIME编码才能完整上传。还有就是天加了enctype= "multipart/form-data "不能使用request.getParameter("fileName")来获取表单元素
追问
对于上传文件来说,你上传得文件给服务器后,即使服务器知道你本地的文件路径的话,也没有什么意义,服务器是不可能直接访问到你本地的文件的。因此,对于服务器来说,这个路径是没有意义的。这是他们的回答,我只是想上传个图片而已,我想的就是把文件路径拿到,然后在给上传到TomCat上,但那位兄台说的我不是很明白,为什么拿到路径没用? 不用路径怎么上传呢.? 设置编码为MIME编码,这点还望兄台明细下,灰常感谢~
追答
如果你只是想上传,可以借助开源的JspSmart上传组件就可以了,否则你你只能编写自己的上传代码,代码的怎样写你可以参考JspSmart源码,此外Apache也有一些其它的上传组件,上传文件时http的header中有一些信息需要告诉服务器,这个是上传的文件,你可以通过学习上传组件的源码就能知道原因了!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询