0
我想用XML
解析器和SGML
文档,但是这不起作用。看过一些建议后,似乎只能解决这个问题,那就是使用一个HTML
解析器。所以即时通讯基本上只是试图做一个简单的查询,将从我的文档中提取故事标题。 (它工作,如果我解析null - 打印整个文档,只是我不知道如何访问一个特定的标签,如标题)。在SGML中使用HTML解析器
public static void main(String[] args){
Parser parser = new Parser(xmlFile.getAbsolutePath());
NodeList list = parser.parse (new HasAttributeFilter ("id","title"));
Node node = list.elementAt(0);
if (node instanceof TagNode) {
TagNode meta = (TagNode) node;
String description = meta.getAttribute("title");
System.out.println(description);
}
}
开始SGML文件:
<head>
<meta words=61 rate=180>
<formname>Testing</formname>
<storyid>1234</storyid>
</head>
<story>
<fields>
<f id=title>Sports</f>
<f id=modify-by>Tester</f>
<f id=modify-date>315576000</f>
</fields>
<body>
XML和HTML都与SGML相关,但它们都不兼容。为什么不使用SGML解析器? http://stackoverflow.com/questions/4867894/sgml-parser-in-java – Philipp 2013-02-14 14:59:03
我早些时候阅读过这个线程,如果你可以建议一个很好的话,那么如何使用SGML解析器还没有确定的答案。所有的建议似乎都导致了HTML解析器。顺便说一句,我尝试了SAX解析器,并失败了 – maloney 2013-02-14 15:01:26