![](/img/trans.png)
[英]How disable “This type of file can harm your computer. Do you want to keep file.xml anyway?” in chromedriver?
[英]How can I read file.xml from the same package?
我正在嘗試讀取Properties.xml文件,該文件包含在與我的課程相同的程序包中。
我正在使用以下代碼用新值更新我的xml文件:
到目前為止,我只想讀取文件:
public void UPdateXML(String filename) throws Exception {
this.filename = filename;
System.out.println("Into update xml class");
try {
InputStream fis=BACENGPropertiesFile.class.getResourceAsStream(filename);
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.parse((InputStream) fis);
System.out.println(fis);
System.out.println(doc);
Node child = doc.getFirstChild();
System.out.println(child);
似乎文件存在並且正在作為ImputStream讀取。 但是,當我嘗試將文件解析為文檔(doc)時,該值為null。
這是服務器日志的出口:
Into update xml class
java.io.BufferedInputStream@78355ed4
[#document: null]
[properties: null]
Properties xml文件具有以下結構:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<entry key="dataImport.path">/Users/Admin/Documents/</entry>
</properties>
有人可以告訴我怎么了嗎?
沒有任何錯誤。 您的文檔不為null :它打印為:
[#document: null]
如果為null
,則將其打印出來:
null
順便說一句,為什么不通過Properties.loadFromXML()
加載屬性?
Properties p = new Properties();
try (InputStream in = BACENGPropertiesFile.class.getResourceAsStream(filename)) {
p.loadFromXML(in);
}
您將Properties.xml放在哪個包中? 如果在UPdateXML軟件包中,請更改:
InputStream fis=BACENGPropertiesFile.class.getResourceAsStream(filename);
至
InputStream fis=UPdateXML.class.getResourceAsStream(filename);
無論如何,您的xml文件位於哪個包中,應該選擇該包下的哪些類。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.