LabelModel* XmlLabelParser::readBuffer( const QByteArray& buffer ) { QDomDocument doc; QString errorString; int errorLine; int errorColumn; if ( !doc.setContent( buffer, false, &errorString, &errorLine, &errorColumn ) ) { qWarning() << "Error: Parse error at line " << errorLine << "column " << errorColumn << ": " << errorString; return nullptr; } QDomElement root = doc.documentElement(); if ( root.tagName() != "Glabels-document" ) { qWarning() << "Error: Not a Glabels-document file"; return nullptr; } return parseRootNode( root ); }
COpcPackageRelationshipReader::COpcPackageRelationshipReader(_In_ PImportStream pImportStream) { if (pImportStream.get() == nullptr) throw CNMRException(NMR_ERROR_INVALIDPARAM); PXmlReader pXMLReader = fnCreateXMLReaderInstance(pImportStream); eXmlReaderNodeType NodeType; // Read all XML Root Nodes while (!pXMLReader->IsEOF()) { if (!pXMLReader->Read(NodeType)) break; // Get Node Name LPCWSTR pwszLocalName = nullptr; pXMLReader->GetLocalName(&pwszLocalName, nullptr); if (!pwszLocalName) throw CNMRException(NMR_ERROR_COULDNOTGETLOCALXMLNAME); // Compare with Model Node Name if (wcscmp(pwszLocalName, OPC_RELS_RELATIONSHIP_CONTAINER) == 0) { parseRootNode(pXMLReader.get()); } } }
bool XmlVendorParser::readFile( const QString &fileName ) { QFile file( fileName ); if ( !file.open( QFile::ReadOnly | QFile::Text) ) { qWarning() << "Error: Cannot read file " << fileName << ": " << file.errorString(); return false; } QDomDocument doc; QString errorString; int errorLine; int errorColumn; if ( !doc.setContent( &file, false, &errorString, &errorLine, &errorColumn ) ) { qWarning() << "Error: Parse error at line " << errorLine << "column " << errorColumn << ": " << errorString; return false; } QDomElement root = doc.documentElement(); if ( root.tagName() != "Glabels-vendors" ) { qWarning() << "Error: Not a Glabels-vendors file."; return false; } parseRootNode( root ); return true; }