本文整理汇总了C++中XMLDocument::ErrorID方法的典型用法代码示例。如果您正苦于以下问题:C++ XMLDocument::ErrorID方法的具体用法?C++ XMLDocument::ErrorID怎么用?C++ XMLDocument::ErrorID使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XMLDocument
的用法示例。
在下文中一共展示了XMLDocument::ErrorID方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: readFile
int readFile(string file)
{
XMLDocument doc;
doc.LoadFile(file.data());
cout << file << "\n";
if(!doc.ErrorID())
{
int raio_circulo;
XMLElement* janela = doc.FirstChildElement("aplicacao")->FirstChildElement("janela");
const char *titulo = janela->FirstChildElement("titulo")->GetText();
janela->FirstChildElement( "largura" )->QueryIntText( &width );
janela->FirstChildElement( "altura" )->QueryIntText( &height );
janela->FirstChildElement("fundo")->QueryIntAttribute("corR",&corR_fundo);
janela->FirstChildElement("fundo")->QueryIntAttribute("corG",&corG_fundo);
janela->FirstChildElement("fundo")->QueryIntAttribute("corB",&corB_fundo);
XMLElement* circulo = doc.FirstChildElement("aplicacao")->FirstChildElement("circulo");
circulo->QueryIntAttribute( "raio", &raio_circulo);
circulo->QueryIntAttribute("corR",&corR_circulo);
circulo->QueryIntAttribute("corG",&corG_circulo);
circulo->QueryIntAttribute("corB",&corB_circulo);
title = std::string(titulo);
radius = raio_circulo/(double)width;
}else
{
cout << "Erro ao abrir o arquivo XML "<< file << "\n";
}
return doc.ErrorID();
}
示例2: xmlReadContactInfo
void XmlReader::xmlReadContactInfo(void)
{
XMLDocument doc;
doc.LoadFile(m_filename);
if (doc.ErrorID() != 0) {
printf("read xml error!\n");
return;
}
XMLElement *root = doc.FirstChildElement("root");
XMLElement *contacts = root->FirstChildElement("contacts");
for (XMLElement *contact = contacts->FirstChildElement("contact");
contact;
contact = contact->NextSiblingElement("contact")) {
XMLElement *user2_id = contact->FirstChildElement("user_id");
XMLElement *user2_account = contact->FirstChildElement("user_acount");
XMLElement *user2_name = contact->FirstChildElement("user_name");
printf("user_id: %s\n", user2_id->GetText());
printf("user_account: %s\n", user2_account->GetText());
printf("user_name: %s\n", user2_name->GetText());
printf("\n");
}
}
示例3: LoadLink
string XMLHandler::LoadLink(string name)
{
XMLDocument doc;
doc.LoadFile("links.xml");
if( doc.Error() )
{
cout << "\nERROR:" << doc.ErrorID() << endl;
return "ERROR";
}
XMLElement* rootNode = doc.FirstChildElement("Links");
if (!rootNode) std::cout << "No Links element" << std::endl;
XMLElement* linkNode = rootNode->FirstChildElement("Link");
if(!linkNode) std::cout << "No link elements" << std::endl;
// Loop through XML
for( ; linkNode != NULL; linkNode = linkNode->NextSiblingElement() )
{
if( name == linkNode->Attribute("name") )
{
return linkNode->Attribute("url");
}
}
return "NOTFOUND";
}
示例4: example_1
int example_1()
{
XMLDocument doc;
doc.LoadFile( "resources/dream.xml" );
return doc.ErrorID();
}
示例5: xmlReadSelfInfo
void XmlReader::xmlReadSelfInfo(void)
{
XMLDocument doc;
doc.LoadFile(m_filename);
if (doc.ErrorID() != 0) {
printf("read xml error!\n");
return;
}
XMLElement *root = doc.FirstChildElement("root");
XMLElement *user = root->FirstChildElement("user");
XMLElement *user_id = user->FirstChildElement("user_id");
XMLElement *user1_account = user->FirstChildElement("user_acount");
XMLElement *user_name = user->FirstChildElement("user_name");
XMLElement *big_visit_num = user->FirstChildElement("big_visit_num");
XMLElement *vsp_id = user->FirstChildElement("vsp_id");
XMLElement *vsp_name = user->FirstChildElement("vsp_name");
printf("user_id: %s\n", user_id->GetText());
printf("user1_account: %s\n", user1_account->GetText());
printf("user_name: %s\n", user_name->GetText());
printf("big_visit_num: %s\n", big_visit_num->GetText());
printf("vsp_id: %s\n", vsp_id->GetText());
printf("vsp_name: %s\n", vsp_name->GetText());
printf("================================================\n");
}
示例6: example_2
int example_2()
{
static const char* xml = "<element/>";
XMLDocument doc;
doc.Parse( xml );
return doc.ErrorID();
}
示例7: main
int main(int argc, char **argv)
{
string line = "";
if (argc == 1) {
cout << "Enter file location: " << std::endl;
while (line == "")
getline(cin, line);
}
XMLDocument document;
document.LoadFile(argc > 1 ? argv[1] : line.c_str());
if (document.ErrorID() > 0)
return document.ErrorID();
else {
document.Parse(line.c_str());
auto element = document.FirstChild();
int a =0;
}
}
示例8: loadScores
//read high scores XML ===============================
std::string loadScores ( int player )
{
int counter=0;
XMLDocument* doc = new XMLDocument();
doc->LoadFile ( "highscore.xml" );
int errorID = doc->ErrorID();
std::string err = doc->ErrorName();
std::string playerString[20][3];
XMLPrinter printer;
//std::cout << "Test file loaded. ErrorID = "<<errorID<<" "<<err<<std::endl;
if ( errorID!=0 )
return "";
XMLNode* root = doc->FirstChildElement ( "players" );
if ( root == NULL ) {
std::cout<<"error xml root"<<std::endl;
return "";
}
XMLElement* node = root->FirstChildElement ( "player" )->ToElement();
if ( node == NULL ) {
std::cout<<"error xml"<<std::endl;
return "";
}
while ( node->NextSiblingElement() !=NULL && counter<=player ) {
XMLElement* element = node->FirstChildElement ( "name" )->ToElement();
if ( element == NULL ) {
std::cout<<"error xml"<<std::endl;
return "";
}
playerString[counter][0] = element->GetText();
//std::cout <<"playerstring="<<playerString[counter][0]<<std::endl;
element = element->NextSiblingElement ( "score" )->ToElement();
if ( element == NULL ) {
std::cout<<"error xml"<<std::endl;
return "";
}
playerString[counter][1] = element->GetText();
element = element->NextSiblingElement ( "mode" )->ToElement();
if ( element == NULL ) {
std::cout<<"error xml"<<std::endl;
return "";
}
playerString[counter][2] = element->GetText();
node = node->NextSiblingElement ( "player" )->ToElement();
if ( node == NULL ) {
std::cout<<"error xml"<<std::endl;
return "";
}
counter++;
}
return playerString[player][0]+", "+playerString[player][1]+", "
+playerString[player][2];
}
示例9: Init
// Loads the campaign data
int _Campaign::Init() {
Campaigns.clear();
Log.Write("_Campaign::Init - Loading file irrlamb.xml");
// Open the XML file
std::string LevelFile = std::string("levels/main.xml");
XMLDocument Document;
if(Document.LoadFile(LevelFile.c_str()) != XML_NO_ERROR) {
Log.Write("Error loading level file with error id = %d", Document.ErrorID());
Log.Write("Error string 1: %s", Document.GetErrorStr1());
Log.Write("Error string 2: %s", Document.GetErrorStr2());
Close();
return 0;
}
// Check for level tag
XMLElement *CampaignsElement = Document.FirstChildElement("campaigns");
if(!CampaignsElement) {
Log.Write("Could not find campaigns tag");
return 0;
}
// Load campaigns
XMLElement *CampaignElement = CampaignsElement->FirstChildElement("campaign");
for(; CampaignElement != 0; CampaignElement = CampaignElement->NextSiblingElement("campaign")) {
CampaignStruct Campaign;
Campaign.Name = CampaignElement->Attribute("name");
// Get levels
XMLElement *LevelElement = CampaignElement->FirstChildElement("level");
for(; LevelElement != 0; LevelElement = LevelElement->NextSiblingElement("level")) {
LevelStruct Level;
Level.File = LevelElement->GetText();
Level.DataPath = Game.GetWorkingPath() + "levels/" + Level.File + "/";
Level.Unlocked = 0;
LevelElement->QueryIntAttribute("unlocked", &Level.Unlocked);
::Level.Init(Level.File, true);
Level.NiceName = ::Level.GetLevelNiceName();
Campaign.Levels.push_back(Level);
}
Campaigns.push_back(Campaign);
}
return 1;
}
示例10: WideCharToMultiByte
wchar_t *GetProductID(wchar_t *path)
{
char *buf = NULL;
UnZipFile(path, "WMAppManifest.xml", &buf, NULL);
char *newBuf = NULL;
if (buf)
{
const char *result = NULL;
XMLDocument doc;
if (doc.Parse(buf))
{
int outputSize = WideCharToMultiByte(CP_UTF8, 0, (wchar_t*)buf, -1, NULL, 0, NULL, NULL);
newBuf = new char[outputSize];
WideCharToMultiByte(CP_UTF8, 0, (wchar_t*)buf, -1, newBuf, outputSize, NULL, NULL);
doc.Parse(newBuf);
delete[] newBuf;
if (doc.ErrorID())
{
return NULL;
}
}
char *levels[] = {"Deployment", "App", "ProductID"};
int levelCount = 3;
XMLElement* elem = doc.FirstChildElement(levels[0]);
for (int i = 1; i < levelCount; i++)
{
if (i == (levelCount - 1))
{
result = elem->Attribute(levels[i]);
}
else
{
elem = elem->FirstChildElement(levels[i]);
if (!elem)
break;
}
}
if (result)
{
wchar_t *str = new wchar_t[strlen(result) + 1];
mbstowcs(str, result, strlen(result) + 1);
return str;
}
}
return NULL;
}
示例11: xmlReadMeetingInfo
void XmlReader::xmlReadMeetingInfo(void)
{
XMLDocument doc;
doc.LoadFile(m_filename);
if (doc.ErrorID() != 0) {
printf("read xml error!\n");
return;
}
XMLElement *root = doc.FirstChildElement("root");
XMLElement *meetings = root->FirstChildElement("meetings");
for (XMLElement *meeting = meetings->FirstChildElement("meeting");
meeting;
meeting = meeting->NextSiblingElement("meeting")) {
XMLElement *meeting_id = meeting->FirstChildElement("meeting_id");
XMLElement *meeting_name = meeting->FirstChildElement("meeting_name");
XMLElement *start_time = meeting->FirstChildElement("start_time");
XMLElement *end_time = meeting->FirstChildElement("end_time");
XMLElement *meeting_conferrees = meeting->FirstChildElement("meeting_conferrees");
printf("meeting_id: %s\n", meeting_id->GetText());
printf("meeting_name: %s\n", meeting_name->GetText());
printf("start_time: %s\n", start_time->GetText());
printf("end_time: %s\n", end_time->GetText());
printf("conferreess:\n");
if (meeting_conferrees) {
for (XMLElement *meeting_conferree = meeting_conferrees->FirstChildElement("meeting_conferree");
meeting_conferree;
meeting_conferree = meeting_conferree->NextSiblingElement("meeting_conferree")) {
XMLElement *user2_id = meeting_conferree->FirstChildElement("user_id");
XMLElement *user2_account = meeting_conferree->FirstChildElement("user_acount");
XMLElement *user2_name = meeting_conferree->FirstChildElement("user_name");
printf("user_id: %s\n", user2_id->GetText());
printf("user_account: %s\n", user2_account->GetText());
printf("user_name: %s\n", user2_name->GetText());
}
}
printf("\n");
}
}
示例12: xmlReadMsmServerInfo
void XmlReader::xmlReadMsmServerInfo(void)
{
XMLDocument doc;
doc.LoadFile(m_filename);
if (doc.ErrorID() != 0) {
printf("read xml error!\n");
return;
}
XMLElement *root = doc.FirstChildElement("root");
XMLElement *msms = root->FirstChildElement("msms");
for (XMLElement *msm = msms->FirstChildElement("msm");
msm;
msm = msm->NextSiblingElement("msm")) {
XMLElement *msm_ip = msm->FirstChildElement("msm_ip");
XMLElement *msm_port = msm->FirstChildElement("msm_port");
printf("msm_ip: %s\n", msm_ip->GetText());
printf("msm_port: %s\n", msm_port->GetText());
}
}
示例13: example_3
int example_3()
{
static const char* xml =
"<?xml version=\"1.0\"?>"
"<!DOCTYPE PLAY SYSTEM \"play.dtd\">"
"<PLAY>"
"<TITLE>A Midsummer Night's Dream</TITLE>"
"</PLAY>";
XMLDocument doc;
doc.Parse( xml );
XMLElement* titleElement = doc.FirstChildElement( "PLAY" )->FirstChildElement( "TITLE" );
const char* title = titleElement->GetText();
printf( "Name of play (1): %s\n", title );
XMLText* textNode = titleElement->FirstChild()->ToText();
title = textNode->Value();
printf( "Name of play (2): %s\n", title );
return doc.ErrorID();
}
示例14: loadSceneFromFile
// TODO move this function to the constructor ?
void Scene::loadSceneFromFile(const char* filename){
XMLDocument doc;
doc.LoadFile(filename);
// Check for errors in the XML
if (doc.ErrorID() != 0)
{
doc.PrintError();
}
XMLElement *music = doc.FirstChildElement("scene");
pathMusic = music->FirstChildElement("music")->GetText();
XMLElement *end = doc.FirstChildElement("scene");
if(end->FirstChildElement("end")) this->end = atoi(end->FirstChildElement("end")->GetText());
else this->end = 0;
loadModels(doc);
loadDialogues(doc);
loadLights(doc);
loadRoom(doc);
}
示例15: xmlReadTitleInfo
void XmlReader::xmlReadTitleInfo(void)
{
XMLDocument doc;
doc.LoadFile(m_filename);
if (doc.ErrorID() != 0) {
printf("read xml error!\n");
return;
}
XMLElement *root = doc.FirstChildElement("root");
XMLElement *dev_id = root->FirstChildElement("dev_id");
XMLElement *user_account = root->FirstChildElement("user_acount");
XMLElement *vsp_url = root->FirstChildElement("vsp_url");
XMLElement *code = root->FirstChildElement("code");
XMLElement *msg = root->FirstChildElement("msg");
printf("dev_id: %s\n", dev_id->GetText());
printf("user_account: %s\n", user_account->GetText());
printf("vsp_url: %s\n", vsp_url->GetText());;
printf("code: %s\n", code->GetText());
printf("msg: %s\n", msg->GetText());
printf("============================================\n");
}