通过input type=file上传一个Excel,在打开的时候java.io.FileNotFoundException:
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServl...
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Into into = new Into();
Excel excel = new Excel();
String path = new String(request.getParameter("excel").getBytes("ISO8859-1"),"UTF-8");
System.out.println(path);
File file=new File(path);
List<Mynews> ls = excel.addCustomerAssign(file);
Iterator<Mynews> iter = ls.iterator();
while (iter.hasNext()) {
Mynews ms = (Mynews) iter.next();
if(into.insertexcel(ms)){
System.out.println("成功");
}else {
System.out.println("失败");
}
}
} 展开
Into into = new Into();
Excel excel = new Excel();
String path = new String(request.getParameter("excel").getBytes("ISO8859-1"),"UTF-8");
System.out.println(path);
File file=new File(path);
List<Mynews> ls = excel.addCustomerAssign(file);
Iterator<Mynews> iter = ls.iterator();
while (iter.hasNext()) {
Mynews ms = (Mynews) iter.next();
if(into.insertexcel(ms)){
System.out.println("成功");
}else {
System.out.println("失败");
}
}
} 展开
展开全部
你代码里 这一句 request.getParameter("excel")
获得的只是文件的名字,并不是路径,
只有名字肯定找不到文件啊!
你要把路径也获取到,类似于这样的 : d:\test.xlsx
获得的只是文件的名字,并不是路径,
只有名字肯定找不到文件啊!
你要把路径也获取到,类似于这样的 : d:\test.xlsx
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我去,又是一个用路径上传的。用request.getInputStream()直接获取流,你用path是获取不到的。path是本地路径,而程序在服务器上,获取的是服务器的路径。
http://zhidao.baidu.com/question/1988364813017018467 问题跟你差不多
http://zhidao.baidu.com/question/1988364813017018467 问题跟你差不多
追问
如果我单纯想让程序能用,就只需file(填路径是吧),但是为什么我只写文件名,把文件放在根目录不好使呢
追答
证明你的路径是错误的。
String rootUrl = request.getServletContext().getRealPath("/");
String filePath = rootUrl + "common/xx.xls";
先获取项目的根路径,然后拼接path。代码中是项目路径下面有个common文件夹,然后下面是xx.xls文件。注意一点,我的common是跟WEB-INF是同一个级别的路径。一般WEB-INF上面一层就是根路径。
你从request.getParameter("excel")去获取一个路径,给人的感觉就是从页面传递过来的一个参数。既然你这么说了,就干脆按我上面的代码直接写死好了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
文件路径不对,按你这个代码,test.xlsx要放在工程根目录才能读到。
追问
根目录也不好使啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
页面form中添加 enctype="multipart/form-data"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询