我的项目名称为“XMLparser
”。在项目中有一个名为“XML
”的文件夹,其中包含文件“database.xml
”当我尝试将目录发送到数据库时,Java显示错误。
Java错误:
Exception in thread "main" java.lang.IllegalArgumentException: InputStream cannot be null
at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
at XMLparser.main(XMLparser.java:24)
我尝试使用此代码获取目录:
Document document = builder.parse(ClassLoader.getSystemResourceAsStream("../xml/database.xml"));
项目树:
XMLparser
src
- (default package)
- XMLparser.java (My code is here)
JRE System Library
xml
- database.xml (This is the xml file)
需要在此处键入ClassLoader.getSystemResourceAsStream(“HERE
”)才能工作?
答案 0 :(得分:1)
试试这个,如果你不想添加" /xml/database.xml"在你的" src"文件夹:
final String workingDirectory = System.getProperty("user.dir");
final InputStream in = new FileInputStream(workingDirectory + "/xml/database.xml");
document = builder.parse(in);
..
答案 1 :(得分:1)
您无法转到应用程序的根文件夹
答案 2 :(得分:0)
只需删除第一部分:
document = builder.parse(ClassLoader.getSystemResourceAsStream("xml/database.xml"));
您的xml文件夹位于项目文件夹的根目录中,如果我没弄错的话,这就是getSystemResourceAsStream所在的位置。