загрузить значения XML и передать их в строку в vStack Overflow

Я работаю в vc ++ и пытаюсь загрузить XML-файл и загрузить все данные в строку, но не получаю результаты

 char text[700] = {""};

TiXmlDocument doc( "'demotest.xml" );
bool loadOkay = doc.LoadFile();
if ( !loadOkay )
{
printf( "Could not load test file 'demotest.xml'. Error='%s'. Exiting.\n", doc.ErrorDesc() );
system("PAUSE");
exit( 1 );
}

printf( "** Demo doc read from disk: ** \n\n" );
printf( "** Printing via doc.Print **\n" );
//doc.Print( stdout );

{
printf( "** Printing via TiXmlPrinter **\n" );
TiXmlPrinter printer;
doc.Accept( &printer );
fprintf( stdout, "%s", printer.CStr() );

//upto this line its working fine in console. but when I convert this string am getting struck

wsprintf(text, "%s", (char*)printer.CStr());
AddLOG_message(text, 0, true);}

Последние две строки я должен получить весь контент XML, включая заголовок, элементы и значения.
Пожалуйста помоги.

0

Решение

Я бы сделал это следующим образом: с меньшим количеством кода на C, большим количеством кода на C ++ и устаревшим массивом рискованных символов длиной магическое число 700:

TiXmlPrinter printer;
doc.Accept( &printer );
doc.Print(); // simpler for stdout output
std::string text = printer.CStr(); // easier, safer this way
AddLOG_message( text.c_str(), 0, true );
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]