David91
8 years agoFrequent Contributor
Parse XML - parse Error
Hi, i have problem with parsing XML file.
<?xml version="1.0"?> <controls> <control id="1"> <type>TextEdit</type> <name>Text1</name> <value>My string</value> </control> <control id="2"> <type>Button</type> <name>Btn1</name> <value>OK</value> </control> <control id="3"> <type>TextEdit</type> <name>Text2</name> <value>My string</value> </control> <control xmlns="CheckBoxes"> <type>CheckBox</type> <name>CheckBox1</name> <value>True</value> </control> <control xmlns="Button2"> <type>Button</type> <name>Btn2</name> <value>Cancel</value> </control> </controls>
my code in JavaScript:
function TestWithXPath() { var Doc, s, Nodes, ChildNodes, i, Node; // If you have MSXML 6: Doc = new ActiveXObject("Msxml2.DOMDocument.6.0"); // Load data from a file // We use the file created earlier Doc.load("c:\\Projects\\Windows7\\DEV\\Data.xml"); // Report an error, if, for instance, the markup or file structure is invalid if(Doc.parseError.errorCode != 0) { s = "Reason:\t" + Doc.parseError.reason + "\n" + "Line:\t" + aqConvert.VarToStr(Doc.parseError.line) + "\n" + "Pos:\t" + aqConvert.VarToStr(Doc.parseError.linePos) + "\n" + "Source:\t" + Doc.parseError.srcText; // Post an error to the log and exit Log.Error("Cannot parse the document.", s); return; } // Use an XPath expression to obtain a list of "control" nodes Nodes = Doc.selectNodes("/control"); // Process the node for(i = 0; i < Nodes.length; i++) { // Get the node from the collection of the found nodes Node = Nodes.item(i); // Get child nodes ChildNodes = Node.childNodes; // Output two child nodes to the log Log.Message(ChildNodes.item(1).text + ": " + ChildNodes.item(2).text); } }
Test script report parseError. Please help me, how can i parse XML file?
Cannot parse the document.