Problem mit XercesC

PeterStaab

Grünschnabel
Hallo,

Ersteinmal der Code:

Code:
XMLPlatformUtils::Initialize();
	const char* xmlFile = "gamedata.xml";
	static const XMLCh gLS[] = { chLatin_L, chLatin_S, chNull };

	DOMImplementation* impl = DOMImplementationRegistry::getDOMImplementation(gLS);
	DOMBuilder* parser = ((DOMImplementationLS*)impl)->createDOMBuilder(DOMImplementationLS::MODE_SYNCHRONOUS, 0);
	
	parser->setFeature(XMLUni::fgDOMDatatypeNormalization, true);
	
	parser->resetDocumentPool();

	XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument* doc = 0;

	try 
	{	
		doc = parser->parseURI(xmlFile);

		DOMNode* root = doc->getDocumentElement();
		DOMNodeList* nodes = root->getChildNodes();

		for (int i = 0; i < nodes->getLength(); i++)
		{
			DOMNode* child_node = nodes->item(i);
			const XMLCh* attribute_name = child_node->getNodeName();
			const XMLCh* attribute_value = child_node->getNodeValue();

XML-File "gamedata.xml":
Code:
<?xml version="1.0" encoding="utf-8"?>
<bla>
<resolution>1024:768</resolution>
<colordepth>32</colordepth>
</bla>

Also ersten Bekomme ich mal eine Exception: "Eine Ausnahme (erste Chance) bei 0x7c81eb33 in Test.exe: Microsoft C++ exception: xercesc_2_6::XMLErrs::Codes @ 0x0012f0a8." (kann im Quelltext nicht gefunden werden laut Compiler).

Das grössere Problem ist jedoch, dass in "attribute_name" die attributnamen stehen, aber in "attribute_value" keine werte!

Ich muss zugeben, dass ich mich mit xerces noch kaum auskenne, und daher so meine probleme habe,...

Peter
 
Zurück