欲加载的Xerces-C ++(2.8版本,Linux下)的XML文档,以及使用不从文档引用的DTD模式验证它。我试过如下:

XercesDOMParser parser;
parser.loadGrammar("grammar.dtd", Grammar::DTDGrammarType);
parser.setValidationScheme(XercesDOMParser::Val_Always);
parser.parse("xmlfile.xml");

不过,这并不表示一个错误,如果该文件是无效的。我缺少什么?

有帮助吗?

解决方案

您需要设置错误处理程序之前调用解析,如果你想看到什么:

Handler handler;    
parser.setErrorHandler( &handler );

,其中处理程序是从的ErrorHandler <派生的类/ p>

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top