at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at com.keysoft.upload.uploadxls.perform(uploadxls.java:71)
at charisma.web.mvc.MainServlet._$1(Unknown Source:456)
at charisma.web.mvc.MainServlet._$1(Unknown Source:180)
at charisma.web.mvc.MainServlet.doPost(Unknown Source:93)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
我就贴这么多异常啊,后面的就不用看了
JAVA代码是
FileInputStream fs = new FileInputStream("D:\\abc.xls");
路径是对的,文件也有,就是找不到。。。。我实在没办法了
各位大哥,帮帮小弟吧
11 个解决方案
#1
#2
按道理说没什么错。。。
你取本机还是服务器端的文件?
这行代码只能取到服务器端的文件。。如果取客户端的就不行喽。。
你取本机还是服务器端的文件?
这行代码只能取到服务器端的文件。。如果取客户端的就不行喽。。
#3
不同环境下的路径是不一样的。你用System.getProperty("file.separator")来替换‘\\’,就应该没问题了
#4
没问题啊,把\\改为/试试。
#5
public FileInputStream(String name)
throws FileNotFoundException通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定。创建一个新 FileDescriptor 对象来表示此文件连接。
首先,如果有安全管理器,则用 name 作为参数调用其 checkRead 方法。
如果指定文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取,则抛出 FileNotFoundException。
参数:
name - 与系统有关的文件名。
抛出:
FileNotFoundException - 如果该文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取。
throws FileNotFoundException通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定。创建一个新 FileDescriptor 对象来表示此文件连接。
首先,如果有安全管理器,则用 name 作为参数调用其 checkRead 方法。
如果指定文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取,则抛出 FileNotFoundException。
参数:
name - 与系统有关的文件名。
抛出:
FileNotFoundException - 如果该文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取。
#6
我试了下程序,没问题。是不是你的文件扩展名隐藏了,实际的文件是D:\abc.xls.xls呢???
#7
把abc.xls 放到程序目录下
直接FileInputStream fs = new FileInputStream("abc.xls");
直接FileInputStream fs = new FileInputStream("abc.xls");
#8
应该是这个问题
在我机上也管用
#9
上面说的对,是不是隐藏后缀了?
#10
找不到就是找不到呗.
#11
改成"/"试试
#1
#2
按道理说没什么错。。。
你取本机还是服务器端的文件?
这行代码只能取到服务器端的文件。。如果取客户端的就不行喽。。
你取本机还是服务器端的文件?
这行代码只能取到服务器端的文件。。如果取客户端的就不行喽。。
#3
不同环境下的路径是不一样的。你用System.getProperty("file.separator")来替换‘\\’,就应该没问题了
#4
没问题啊,把\\改为/试试。
#5
public FileInputStream(String name)
throws FileNotFoundException通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定。创建一个新 FileDescriptor 对象来表示此文件连接。
首先,如果有安全管理器,则用 name 作为参数调用其 checkRead 方法。
如果指定文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取,则抛出 FileNotFoundException。
参数:
name - 与系统有关的文件名。
抛出:
FileNotFoundException - 如果该文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取。
throws FileNotFoundException通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定。创建一个新 FileDescriptor 对象来表示此文件连接。
首先,如果有安全管理器,则用 name 作为参数调用其 checkRead 方法。
如果指定文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取,则抛出 FileNotFoundException。
参数:
name - 与系统有关的文件名。
抛出:
FileNotFoundException - 如果该文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取。
#6
我试了下程序,没问题。是不是你的文件扩展名隐藏了,实际的文件是D:\abc.xls.xls呢???
#7
把abc.xls 放到程序目录下
直接FileInputStream fs = new FileInputStream("abc.xls");
直接FileInputStream fs = new FileInputStream("abc.xls");
#8
应该是这个问题
在我机上也管用
#9
上面说的对,是不是隐藏后缀了?
#10
找不到就是找不到呗.
#11
改成"/"试试