我有一个示例XML文件,如:
<?xml version="1.0" encoding="utf-8"?>
<Test1>
<typ>task</typ>
<datestamp>20150602153306</datestamp>
<datecreate>20150602153306</datecreate>
<task uuid="92F7F685-C370-4E55-9026-020E3CDCEDE0" status="0">
<task_headline>TEST2000</task_headline>
<task_subject>There is a Problem.</task_subject>
<task_action>Solve it!</task_action>
<task_priority color="#E62C29">high</task_priority>
<task_memo></task_memo>
</task>
<task uuid="77783486-C370-4E55-9026-020E3CDCEDE0" status="0">
<task_headline>TEST3000</task_headline>
<task_subject>Another Problem</task_subject>
<task_action>Solve it again.</task_action>
<task_priority color="#E62C29">high</task_priority>
<task_image></task_image>
</task>
</Test1>
我想弄清楚如何搜索uuid
属性并在此元素中执行不同的操作,例如确定第一个元素中是否缺少像task_image
这样的子元素,{{1在第二个元素中。
我还想将textcontent添加到task_memo
。
我尝试了以下代码,但它不起作用:
task_memo
要点:
如何搜索uuid并使用此元素?
如何向现有
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document doc = docBuilder.parse(new FileInputStream(new File(fileDir, filenameWithExt))); NodeList taskList = doc.getElementsByTagName("task"); for (int i = 0; i < taskListLength; i++) { Node node = taskList.item(i); Node key = node.getAttributes().getNamedItem("uuid"); if (task_memo.equals(node.getNodeName())) { node.setTextContent(taskItems.get(position).get(task_memo)); } if (task_image.equals(node.getNodeName())) { node.setTextContent(taskItems.get(position).get(task_image)); } }
元素添加一些文字?- 醇>
如何确定某个元素是否存在,如果不存在,请创建它?
我知道这是一个非常困难的话题,这就是为什么我希望你能帮助我弄清楚如何做这些事情。
亲切的问候!