2015-09-07 53 views
0

解析DTD在加载语法为DTD我得到了以下错误:在Java中

"unknown protocol c".

任何人都可以请有关此错误的帮助?

XMLInputSource is = new XMLInputSource(null, dtdPath, null); 
     Hashtable temp = new Hashtable(); 

     SymbolTable st = new SymbolTable(); 
     DTDHandler handler = new DTDHandler(); 
     XMLDTDLoader loader = new XMLDTDLoader(st); 
     loader.setDTDHandler(handler); 
     [![enter image description here][1]][1] 
     try { 

      Grammar grammar = loader.loadGrammar(is); 
+0

你可以发布你的错误跟踪,以便我可以理解你在尝试什么? – soorapadman

+0

XML和DTD也将有所帮助。 – CuriousMind

+0

我正在尝试从java文件中的dtd中检索元素..但m无法加载它 – kunal

回答

0

协议是一个URI/URL,比如第一部分技术术语的“http:...”,并在“JDBC:......”的协议分别为httpjdbc

现在随着你的错误我们有c:。这听起来好像你给了一个文件路径其中一个URL是预期的:file://c:/.../...

类File具有toURI。

对于DTD,也有PUBLIC和系统URI。

+0

我添加了完整堆栈轨迹的图像 – kunal