0

我编写了一个代码来使用 DTDParser jar 解析 DTD 文件。代码是

public static void main(String[] arg)
{
BufferedReader buff=new BufferedReader(new FileReader("abc.dtd"));
DTDParser dtd=new DTDParser(bff);
DTD dt=dtd.Parse();
System.out.println(dt.elements);
} 

我得到的输出是

message=com.wutka.DTDElement@c20e24...etc 对于所有带有 diff @no 更改的元素都与此相同。但我只需要元素名称...还可以帮助我将这些值放入数组中,这样我就可以将其用于进一步验证...谢谢您..

4

1 回答 1

0

如果您想要数组中的元素,或者最好是列表中的元素,那么您需要迭代,dt.elements例如:

List<String> elementNames = new ArrayList<String>();
for (DTDElement element : dt.elements)
{
    elementNames.add(element.getName());
}

我不知道这个库的细节(即 getName() 方法可能不存在),但这是一个一般概念。

于 2012-07-11T14:54:14.960 回答