我有以下字符串(它不是來自一個文件:它來自DB):一個XML字符串解析沒有解析器工具
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<person name="dave">
<job>teacher</job>
<job>musician</job>
</person>
<person name="chris">
<job>farmer</job>
</person>
</root>
當然,例如簡化。
我必須用基本字符串函數「手動」解析它(例如:我不能使用XML解析器)。
我創建一個HashMap:
HashMap<String,ArrayList> personsAndJobs = new HashMap<String,ArrayList>
但是,我不能找到一個很好的算法,可以存儲數據是這樣的:
for each "person" tag {
// put the "name" attribute in a HashMap
personsAndJobs.put(person.get("name"),null)
jobs = new ArrayList<String>();
for each "job" of that person{
jobs.add(job.getTagContent())
}
personsAndJobs.put(person.get("name"),jobs)
}
這是我想要的alogrithm落實到位。
任何人都可以幫助我將該算法轉換成Java?
謝謝, 問候。
爲什麼要求不使用xml解析器?除非你只是爲了教育,否則不需要重新發明輪子。 – 2011-12-22 21:06:46
另外,您可以使用內置的Java XML解析器,因此,如果「外部」解析器出現問題,則可以避免它,因爲它使用與JVM捆綁在一起的解析器。 – Michael 2011-12-22 21:13:01
我不明白爲什麼你不能使用XML解析器?這是一項功課嗎? – 2011-12-22 21:14:18