xmltest.cpp 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #include "tinyxml2.h"
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. using namespace tinyxml2;
  5. int main( int argc, const char* argv )
  6. {
  7. #if 0
  8. {
  9. static const char* test = "<!--hello world-->";
  10. XMLDocument doc;
  11. doc.Parse( test );
  12. doc.Print( stdout );
  13. }
  14. {
  15. static const char* test = "<!--hello world\n"
  16. " line 2\r"
  17. " line 3\r\n"
  18. " line 4\n\r"
  19. " line 5\r-->";
  20. XMLDocument doc;
  21. doc.Parse( test );
  22. doc.Print( stdout );
  23. }
  24. #endif
  25. {
  26. static const char* test[] = { //"<element />",
  27. //"<element></element>",
  28. //"<element><subelement/></element>",
  29. //"<element><subelement></subelement></element>",
  30. // "<element><subelement><subsub/></subelement></element>",
  31. //"<!--comment beside elements--><element><subelement></subelement></element>",
  32. //"<!--comment beside elements, this time with spaces--> \n <element> <subelement> \n </subelement> </element>",
  33. //"<element attrib1='foo' attrib2=\"bar\" ></element>",
  34. //"<element attrib1='foo' attrib2=\"bar\" ><subelement attrib3='yeehaa' /></element>",
  35. //"<element>Text inside element.</element>",
  36. //"<element><b></b></element>",
  37. //"<element>Text inside and <b>bolded</b> in the element.</element>",
  38. //"<outer><element>Text inside and <b>bolded</b> in the element.</element></outer>",
  39. "<element>This &amp; That.</element>",
  40. "<element attrib='This&lt;That' />",
  41. 0
  42. };
  43. for( int i=0; test[i]; ++i ) {
  44. XMLDocument doc;
  45. doc.Parse( test[i] );
  46. doc.Print();
  47. printf( "----------------------------------------------\n" );
  48. }
  49. }
  50. {
  51. static const char* test = "<element>Text before.</element>";
  52. XMLDocument doc;
  53. doc.Parse( test );
  54. XMLElement* root = doc.FirstChildElement();
  55. XMLElement* newElement = doc.NewElement( "Subelement" );
  56. root->InsertEndChild( newElement );
  57. doc.Print();
  58. }
  59. {
  60. XMLDocument* doc = new XMLDocument();
  61. static const char* test = "<element><sub/></element>";
  62. doc->Parse( test );
  63. delete doc;
  64. }
  65. return 0;
  66. }