C++ tinyxml TiXMLDocument::LoadFile()














































C++ tinyxml TiXMLDocument::LoadFile()




  TiXMLDocument::LoadFile() :
        LoadFile() method of TiXMLDocument is used to load XML from a file.

         The simplest way to load a file into a TinyXML DOM is:

TiXmlDocument doc( "demo.xml" );
doc.LoadFile()


         LoadFile() method of TiXMLDocument is overloaded in the following ways:

1. Syntax/ Prototype :


         bool TiXmlDocument::LoadFile(const std::string & filename,
TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING
)
 

    Parameters:     
      encoding STL std::string version.



 

2. Syntax:
               
          bool TiXmlDocument::LoadFile(FILE * file,
TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING )



          Load a file using the given FILE*. Returns true if successful. Note that this method doesn't stream - the entire object pointed at by the FILE* will be interpreted as an XML file. TinyXML doesn't stream in XML from the current file location. Streaming may be added in the future.


3. Syntax:      

          bool TiXmlDocument::LoadFile(const char * filename,
TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING

          Load a file using the given filename. Returns true if successful.


4. Syntax:         

          bool TiXmlDocument::LoadFile(TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING ) 

         Load a file using the current document value. Returns true if successful. Will delete any existing document data before loading.


         Try one simple example of using LoadFile() of TiXMLDocument :

          Fruits.xml file:

<?xml version="1.0" ?> <file> <fruit> <name>Apple</name> <color>Red</color> </fruit> <fruit> <name>Grapes</name> <color>Green</color> </fruit> <fruit> <name>Strawberries</name> <color>Red</color> </fruit> </file>

          DemoLoadFile.cpp file:       


#include <cstdlib> #include <iostream> # include "tinyxml.h" using namespace std; int main() { TiXmlDocument doc; doc.LoadFile("Fruits.xml"); TiXmlHandle docHandle( &doc ); TiXmlElement* efruit = docHandle.FirstChild( "file" ).Child( "fruit", 0 ).ToElement(); while( efruit ) { TiXmlElement *fName = efruit->FirstChildElement( "name" ); if ( fName != NULL ) { cout << fName->GetText(); } TiXmlElement *fColor = efruit->FirstChildElement( "color" ); if ( fColor != NULL ) { cout << " " << fColor->GetText(); } cout << endl; efruit = efruit->NextSiblingElement( "fruit" ); } return 0
} 


       Finally run the program by using following commands:

C:\Users\hp>cd DesktopTinyXMLDemo

C:\Users\hp\Desktop\TinyXMLDemo>g++ DemoLoadFile.cpp tinyxml.cpp tinystr.cpp tinyxmlparser.cpp tinyxmlerror.cpp -o DemoLoadFile.exe

C:\Users\hp\Desktop\TinyXMLDemo>DemoLoadFile.exe
Apple Red
Grapes Green
Strawberries Red







More Articles of Nikita Kukreja:

Name Views Likes
C++ tinyxml TiXmlAttribute::Name() 127 9
C++ tinyxml TiXmlAttribute::SetName() 102 8
C++ tinyxml TiXmlElement::RemoveAttribute() 84 3
C++ tinyxml TiXmlDocument::RootElement() 112 1
C++ pugixml pugi::xml_document::load_buffer_inplace( ) 123 7
C++ pugixml pugi::xml_document::load_buffer( ) 125 5
C++ pugixml pugi::xml_node::prepend_child( ) 105 5
C++ pugixml pugi::xml_node::find_child_by_attribute( ) 137 5
C++ pugixml pugi::xml_text::get( ) 108 5
C++ pugixml pugi::xml_text::as_string( ) 118 5
C++ pugixml pugi::xml_node::select_node( ) 139 6
C++ pugixml pugi::xml_node::select_nodes( ) 98 5
C++ pugixml pugi::xml_text::as_uint( ) 102 5
C++ pugixml pugi::xml_text::as_int( ) 108 5
C++ pugixml pugi::xml_text::as_double( ) 98 5
C++ pugixml pugi::xml_text::as_bool( ) 93 6
C++ pugixml pugi::xml_node::find_attribute( ) 123 5
C++ pugixml pugi::xml_node::find_child( ) 111 5
C++ pugixml pugi::xml_node::find_node( ) 111 6
C++ pugixml pugi::xml_node::text( ) 94 5
C++ pugixml pugi::xml_node::children( ) 106 5
C++ pugixml pugi::xml_node::attributes( ) 95 4
C++ pugixml pugi::xml_node::attributes_end( ) 89 6
C++ pugixml pugi::xml_node::attributes_begin( ) 97 7
C++ pugixml pugi::xml_node::end( ) 82 7
C++ pugixml pugi::xml_node::begin( ) 108 5
C++ pugixml pugi::xml_node::attribute( ) 97 6
C++ pugixml pugi::xml_node::insert_attribute_before( ) 90 6
C++ pugixml pugi::xml_node::insert_attribute_after( ) 100 6
C++ pugixml pugi::xml_node::insert_child_before( ) 89 4
C++ pugixml pugi::xml_node::insert_child_after( ) 112 5
C++ pugixml pugi::xml_node::root( ) 108 5
C++ pugixml pugi::xml_document::document_element ( ) 101 5
C++ pugixml pugi::xml_node::parent ( ) 105 5
C++ pugixml pugi::xml_node::set_name ( ) 93 5
C++ pugixml pugi::xml_node::set_value ( ) 113 5
C++ pugixml pugi::xml_node::type ( ) 211 5
C++ pugixml pugi::xml_node::print ( ) 106 5
C++ pugixml pugi::xml_node::append_child( ) 93 5
C++ pugixml pugi::xml_node::append_attribute( ) 114 5
C++ pugixml pugi::xml_document::load_string( ) 110 6
C++ pugixml pugi::xml_node::remove_attribute( ) 96 6
C++ pugixml pugi::xml_node::remove_child( ) 97 5
C++ pugixml pugi::xml_parse_result::offset 106 5
C++ pugixml pugi::xml_parse_result::description( ) 89 5
C++ pugixml pugi::xml_node::child( ) 105 5
C++ pugixml pugi::xml_node::child_value( ) 151 5
C++ pugixml pugi::xml_node::previous_sibling( ) 85 4
C++ pugixml pugi::xml_node::next_sibling( ) 132 4
C++ pugixml pugi::xml_attribute::next_attribute( ) 84 5
C++ pugixml pugi::xml_node::last_attribute( ) 91 5
C++ pugixml pugi::xml_node::first_attribute( ) 89 5
C++ pugixml pugi::xml_node::last_child( ) 107 8
C++ pugixml pugi::xml_node::first_child( ) 110 7
C++ pugixml pugi::xml_document::save ( ) 90 5
C++ pugixml pugi::xml_node::value ( ) 84 4
C++ pugixml pugi::xml_document::save_file ( ) 99 5
C++ pugixml pugi::xml_document::load_file ( ) 93 6
C++ pugixml Installation 194 5
C++ pugixml Introduction 76 7
C++ tinyxml TiXmlAttribute::SetName() 88 5
C++ tinyxml TiXmlAttribute::Name() 73 6
C++ tinyxml TiXmlAttribute::Previous() 60 5
C++ tinyxml TiXmlAttribute::Next() 102 7
C++ tinyxml TiXmlNode::NoChildren() 75 5
C++ tinyxml TiXmlNode::Clear() 85 5
C++ tinyxml TiXmlNode::RemoveChild() 75 5
C++ tinyxml TiXmlElement::RemoveAttribute() 75 6
C++ tinyxml TiXmlElement::FirstAttribute() 90 5
C++ tinyxml TiXmlElement::LastAttribute() 60 5
C++ tinyxml TiXmlElement::Attribute() 100 5
C++ tinyxml TiXmlNode::SetAttribute() 101 5
C++ tinyxml TiXmlNode::LinkEndChild() 103 7
C++ tinyxml TiXmlNode::Clone() 66 5
C++ tinyxml TiXmlNode::Type() 68 5
C++ tinyxml TiXmlNode::SetValue() 94 5
C++ tinyxml TiXmlNode::Value() 76 6
C++ tinyxml TiXmlNode::NextSiblingElement() 91 6
C++ tinyxml TiXmlNode::PreviousSibling() 63 5
C++ tinyxml TiXmlNode::NextSibling() 71 6
C++ tinyxml TiXmlNode::Parent() 71 6
c++ tinyxml TiXmlNode::FirstChildElement() 75 5
C++ tinyxml TiXmlNode::ToComment() 77 6
C++ tinyxml TiXmlNode::ToDeclaration() 70 5
C++ tinyxml TiXmlNode::ToText() 76 5
C++ tinyxml TiXmlNode::ToElement() 72 5
C++ tinyxml TiXmlNode::ToDocument() 58 4
C++ tinyxml TiXmlNode::LastChild() 83 4
C++ tinyxml TiXmlNode::FirstChild() 66 4
C++ tinyxml TiXmlDocument::RootElement() 74 4
C++ tinyxml TiXmlDocument::SaveFile() 69 4
C++ tinyxml TiXMLDocument::LoadFile() 170 6
C++ tinyxml Installation 78 6
C++ tinyxml Introduction 100 6

Comments