日期:2014-05-20  浏览次数:20979 次

在java工程中要解析一个xml文件要怎么写那个xml文件的路径
org.dom4j.DocumentException: records.xml (系统找不到指定的文件。) Nested exception: records.xml (系统找不到指定的文件。)
at org.dom4j.io.SAXReader.read(SAXReader.java:266)
at XML_DOM4J.File_Handler.getFileContent(File_Handler.java:40)
at XML_DOM4J.File_Handler.<init>(File_Handler.java:30)
at XML_DOM4J.Start.main(Start.java:16)
Nested exception: 
java.io.FileNotFoundException: records.xml (系统找不到指定的文件。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at org.dom4j.io.SAXReader.read(SAXReader.java:243)
at XML_DOM4J.File_Handler.getFileContent(File_Handler.java:40)
at XML_DOM4J.File_Handler.<init>(File_Handler.java:30)
at XML_DOM4J.Start.main(Start.java:16)
Nested exception: java.io.FileNotFoundException: records.xml (系统找不到指定的文件。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at org.dom4j.io.SAXReader.read(SAXReader.java:243)
at XML_DOM4J.File_Handler.getFileContent(File_Handler.java:40)
at XML_DOM4J.File_Handler.<init>(File_Handler.java:30)
at XML_DOM4J.Start.main(Start.java:16)
xml java

------解决方案--------------------
你放在那里?如果在工程下,就相对路径就行了,如果是硬盘上,绝对路径。
------解决方案--------------------
楼主这么写:File f  = new File("/records.xml")
------解决方案--------------------
src 下  
File file = new File ("/src/xx.xml");


------解决方案--------------------
File file = new File ("src/records.xml");
------解决方案--------------------
引用:
records.xml是在XML_DOM4J中的

楼主这么写:File f  = new File("/XML_DOM4J/records.xml")
------解决方案--------------------
建议楼主以后包名尽量小写。
------解决方案--------------------
将要访问的外部文件直接放在代码包里面是一个大忌,在代码中用相对路径也是一个大忌,因为在运行的时候是去运行的class文件而不是源文件。要解决这个问题,首先楼主要知道当一个虚拟机启动以后它的工作目录是什么目录。在eclipse下面默认的工作目录就是工程的根目录。那么你如果想正确的访问文件,你就要从根目录开始写路径。最好的做法是在根目录下面建一个文件夹,在这里面专门放置要访问的文件。比如你在工程根目录下面建立一个resource文件夹,将records.xml放在这个文件夹里面,就可以用resource/records.xml来访问。为了程序的跨平台,最好将/用File.separator来替代
------解决方案--------------------
如果放src下这样获得:

InputStream in = Test.class.getResourceAsStream("/XML_DOM4J/records.xml");
------解决方案--------------------
引用:
引用:将要访问的外部文件直接放在代码包里面是一个大忌,在代码中用相对路径也是一个大忌,因为在运行的时候是去运行的class文件而不是源文件。要解决这个问题,首先楼主要知道当一个虚拟机启动以后它的工作目录是什么目录。在eclipse下面默认的工作目录就是工程的根目录。那么你如果想正确的访问文件,你就要从根目录开始写路径。最好的做法……

解决了就要给分呀