Store XML in C++ Source Code

Store XML in C++ Source Code

XMLwhen it is in ASCIIcan be stored as any other literal in one line, but it’s not very readable. Use the following macros to store XML (or any other string for that matter) across multiple lines (no quotes necessary):

#define BEGIN_XML( data ) static char data[] = {#define XML( text )	  " "#text" "#define END_XML()	  };

Now you can store XML like this:

BEGIN_XML( myData )XML(          some text etc. here  )END_XML()
Access myData in your code as usual. If you prefer, combine the macros in just one:
#define XML_DATA( data, text )	static char data[] = {	" "#text" " };


Share the Post: