我发布的代码全部正在编写,但我需要建议如何读取xml文件,以便输出和/或删除文件。我读到了关于SAX,documentbuilder .parse方法和其他一些方法,但我很困惑我会使用什么。我不需要你为此编写代码,而是指向正确的方向。
文件是单独在一个文件夹中创建的,所以如果可能的话我需要一次性读取它们(文件的名称是下面列出的变量 Id )
这就是我创建XML文件的方式。
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
{
try {
DocumentBuilder doc = factory.newDocumentBuilder();
Document doc1=doc.newDocument();
Element IdNumber = (Element) doc1.createElement(Id);
Element IDes=(Element) doc1.createElement("InitialDestination");
Element FinDes=(Element) doc1.createElement("FinalDestination");
Element HourTime=(Element) doc1.createElement("Hours");
Element Minutetime=(Element) doc1.createElement("Minutes");
Element Price=(Element) doc1.createElement("TicketPrice");
Element Tran=(Element) doc1.createElement("TransportAgency");
doc1.appendChild(IdNumber);
IDes.appendChild(doc1.createTextNode(InDes));
FinDes.appendChild(doc1.createTextNode(FDes));
HourTime.appendChild(doc1.createTextNode(Htime));
Minutetime.appendChild(doc1.createTextNode(Mtime));
Price.appendChild(doc1.createTextNode(TicketPrice));
Tran.appendChild(doc1.createTextNode(TransportAgency));
IdNumber.appendChild(IDes);
IdNumber.appendChild(FinDes);
IdNumber.appendChild(HourTime);
IdNumber.appendChild(Minutetime);
IdNumber.appendChild(Price);
IdNumber.appendChild(Tran);
Source S=new DOMSource(doc1);
File file1=new File("C:\\Users\\Lozanovski\\Desktop\\TransportMe");
file1.mkdirs();
File file=new File("C:\\Users\\Lozanovski\\Desktop\\TransportMe\\"+Id+".xml");
StreamResult R=new StreamResult(file);
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.transform(S, R);
}
catch(ParserConfigurationException except)
{
System.out.println(except);
}
catch(TransformerException except1)
{
System.out.println(except1);
}
catch(DOMException except2)
{
System.out.println(except2);
}
catch(NullPointerException except3){
System.out.println(except3);
}
}
我不知道如何正确发布xml代码(我会接受编辑)
<?xml version="1.0" encoding="UTF-8"?>
-<InsertIdentificationNumber>
<InitialDestination>Insert Initial Destination</InitialDestination>
<FinalDestination>Insert Final Destination</FinalDestination>
<Hours>Insert Hours</Hours>
<Minutes>Insert Minutes</Minutes>
<TicketPrice>Insert Ticket Price</TicketPrice>
<TransportAgency>Insert Transport Agency</TransportAgency>
</InsertIdentificationNumber>
答案 0 :(得分:1)
循环浏览文件夹,对于找到的每个文件,创建一个Document
并使用它来显示/输出内容。您也可以根据需要删除该文件:
File folder = new File("C:\\Users\\Lozanovski\\Desktop\\TransportMe");
DocumentBuilder docBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
if (folder.isDirectory()) {
for (File file : folder.listFiles()) {
Document doc = docBuilder.parse(file); // create an XML document
file.delete(); // delete the file
}
}