После того, как действительные данные, как получить данные из файла XML? - PullRequest
0 голосов
/ 20 сентября 2019

Я пишу программу, и я использовал операцию (регулярное выражение) и действительный шаблон XML ... но после проверки, как сохранить данные из строки и сохранить их в файле XML и как получить данные изXML-файл, я не могу реализовать это, пожалуйста, помогите мне ..... я поделюсь кодом !!!!!!!!!!!!!!!!!!!!!!!!!!мой вопрос заключается в том, что если я ввожу Cofr в блок if, код не работает ???как это решить

#include <iostream>
#include <regex>
#include "tinyxml2.h"
using namespace std;

int main()
{
    string a = "\x01msvc-server\x1Cmsvc-xyzy4\x02<?xml version=\"1.0\" encoding=\"UTF-8\"?><SVCMessage currency=\"INR\" hostName=\"msvc-xyz4\" language=\"US-en\" retransmit=\"N\" sequence=\"00\" timeout=\"90\" version=\"8\"><Amount>0.01</Amount><BusinessDate>20190506</BusinessDate><CheckNumber>0</CheckNumber><LocalDate>20170506</LocalDate><LocalTime>160722</LocalTime><RequestCode>POINT_REDEMPTION</RequestCode><RevenueCenter>0</RevenueCenter><TerminalID>21</TerminalID><TraceID>190506860722N000000</TraceID><Track2>1161111112</Track2><TransactionEmployee>0</TransactionEmployee></SVCMessage>\x03\x04";
    // Here b is object of regex- Regular Expression
    regex b("(.*)\\x01([A-Za-z0-9_-]*)\\x1C([A-Za-z0-9_-]*)\\x02([^\\x00-\\x1F\\x7F]*)\\x03\\x04(.*)");

    if( regex_match(a, b)){
        cout << "String is matches Reguler Expreation " << endl;
        //cout<< a << endl;
        tinyxml2::XMLDocument xmlDoc;
        tinyxml2::XMLError eResult = xmlDoc.LoadFile("regex.xml");
        if(eResult != tinyxml2::XML_SUCCESS)
            return false;
        else
            std::cout<< "Load File in New Document" << std::endl;
    }else{
        cout << "String are not match" << endl;
    }

    return 0;
}



...