【发布时间】:2013-04-16 10:19:46
【问题描述】:
我尝试从windows路径D:/xml/xmlfile.xml读取xml
在我的网页上有一个浏览按钮。我选择文件并单击提交。我来到我的控制器,有代码可以读取这个文件。
fileToRead 变量的值 = 文件名。不是完整的目录路径。
InputStream ips = this.getClass().getClassLoader().getResourceAsStream(fileToRead);
InputStreamReader ipsr = new InputStreamReader(ips);
BufferedReader br=new BufferedReader(ipsr);
String line;
while ((line=br.readLine())!=null){
System.out.println(line);
}
这没有读取文件。另一种技术也不起作用,我得到了File not found exception
InputStream ips=new FileInputStream(file);
【问题讨论】:
-
花点时间考虑一下。你真的想让你的硬盘暴露给每一个有
标签的 web 表单吗?这不是这个过程的工作方式。浏览器将文件作为多部分流发送。你可以看看RFC1867 和RFC2047 或者干脆使用Apache Commons FileUpload -
所以这意味着我无法使用这种方法读取文件。我需要将文件上传到服务器然后读取它。我说的对吗?
-
基本上,是的。但是,根据您采用的方法/您使用的 API,它可能能够为您返回 InputStream 作为上传过程的一部分
-
但我在上述两种方法中分别得到 null InputStream 和 File not found 异常。
-
您要查找的文件在您的服务器上下文中不存在,它尚未上传给您。这是多部分流的责任。您需要以这种方式阅读、保存或处理内容...