⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tinyxml_8h-source.html

📁 xml 简单解析器
💻 HTML
📖 第 1 页 / 共 5 页
字号:
<a name="l00102"></a>00102 
<a name="l00103"></a>00103     <span class="keywordtype">int</span> row;    <span class="comment">// 0 based.</span>
<a name="l00104"></a>00104     <span class="keywordtype">int</span> col;    <span class="comment">// 0 based.</span>
<a name="l00105"></a>00105 };
<a name="l00106"></a>00106 
<a name="l00107"></a>00107 
<a name="l00108"></a>00108 <span class="comment">// Only used by Attribute::Query functions</span>
<a name="l00109"></a>00109 <span class="keyword">enum</span> 
<a name="l00110"></a>00110 { 
<a name="l00111"></a>00111     TIXML_SUCCESS,
<a name="l00112"></a>00112     TIXML_NO_ATTRIBUTE,
<a name="l00113"></a>00113     TIXML_WRONG_TYPE
<a name="l00114"></a>00114 };
<a name="l00115"></a>00115 
<a name="l00116"></a>00116 
<a name="l00117"></a>00117 <span class="comment">// Used by the parsing routines.</span>
<a name="l00118"></a>00118 <span class="keyword">enum</span> TiXmlEncoding
<a name="l00119"></a>00119 {
<a name="l00120"></a>00120     TIXML_ENCODING_UNKNOWN,
<a name="l00121"></a>00121     TIXML_ENCODING_UTF8,
<a name="l00122"></a>00122     TIXML_ENCODING_LEGACY
<a name="l00123"></a>00123 };
<a name="l00124"></a>00124 
<a name="l00125"></a>00125 <span class="keyword">const</span> TiXmlEncoding TIXML_DEFAULT_ENCODING = TIXML_ENCODING_UNKNOWN;
<a name="l00126"></a>00126 
<a name="l00149"></a><a class="code" href="classTiXmlBase.html">00149</a> <span class="keyword">class </span><a class="code" href="classTiXmlBase.html">TiXmlBase</a>
<a name="l00150"></a>00150 {
<a name="l00151"></a>00151     <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlNode.html">TiXmlNode</a>;
<a name="l00152"></a>00152     <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlElement.html">TiXmlElement</a>;
<a name="l00153"></a>00153     <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlDocument.html">TiXmlDocument</a>;
<a name="l00154"></a>00154 
<a name="l00155"></a>00155 <span class="keyword">public</span>:
<a name="l00156"></a>00156     <a class="code" href="classTiXmlBase.html">TiXmlBase</a>() :   <a class="code" href="classTiXmlBase.html#p1">userData</a>(0) {}
<a name="l00157"></a>00157     <span class="keyword">virtual</span> ~<a class="code" href="classTiXmlBase.html">TiXmlBase</a>()                    {}
<a name="l00158"></a>00158 
<a name="l00164"></a>00164     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a2">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth ) <span class="keyword">const </span>= 0;
<a name="l00165"></a>00165 
<a name="l00172"></a><a class="code" href="classTiXmlBase.html#e0">00172</a>     <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#e0">SetCondenseWhiteSpace</a>( <span class="keywordtype">bool</span> condense )      { condenseWhiteSpace = condense; }
<a name="l00173"></a>00173 
<a name="l00175"></a><a class="code" href="classTiXmlBase.html#e1">00175</a>     <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlBase.html#e1">IsWhiteSpaceCondensed</a>()                     { <span class="keywordflow">return</span> condenseWhiteSpace; }
<a name="l00176"></a>00176 
<a name="l00195"></a><a class="code" href="classTiXmlBase.html#a3">00195</a>     <span class="keywordtype">int</span> <a class="code" href="classTiXmlBase.html#a3">Row</a>()<span class="keyword"> const         </span>{ <span class="keywordflow">return</span> location.row + 1; }
<a name="l00196"></a><a class="code" href="classTiXmlBase.html#a4">00196</a>     <span class="keywordtype">int</span> <a class="code" href="classTiXmlBase.html#a4">Column</a>()<span class="keyword"> const      </span>{ <span class="keywordflow">return</span> location.col + 1; }    
<a name="l00197"></a>00197 
<a name="l00198"></a>00198     <span class="keywordtype">void</span>  SetUserData( <span class="keywordtype">void</span>* user )         { <a class="code" href="classTiXmlBase.html#p1">userData</a> = user; }
<a name="l00199"></a>00199     <span class="keywordtype">void</span>* GetUserData()                     { <span class="keywordflow">return</span> <a class="code" href="classTiXmlBase.html#p1">userData</a>; }
<a name="l00200"></a>00200 
<a name="l00201"></a>00201     <span class="comment">// Table that returs, for a given lead byte, the total number of bytes</span>
<a name="l00202"></a>00202     <span class="comment">// in the UTF-8 sequence.</span>
<a name="l00203"></a>00203     <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> utf8ByteTable[256];
<a name="l00204"></a>00204 
<a name="l00205"></a>00205     <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlDocument.html#a14">Parse</a>(  <span class="keyword">const</span> <span class="keywordtype">char</span>* p, 
<a name="l00206"></a>00206                                 TiXmlParsingData* data, 
<a name="l00207"></a>00207                                 TiXmlEncoding encoding <span class="comment">/*= TIXML_ENCODING_UNKNOWN */</span> ) = 0;
<a name="l00208"></a>00208 
<a name="l00209"></a>00209     <span class="keyword">enum</span>
<a name="l00210"></a>00210     {
<a name="l00211"></a>00211         TIXML_NO_ERROR = 0,
<a name="l00212"></a>00212         TIXML_ERROR,
<a name="l00213"></a>00213         TIXML_ERROR_OPENING_FILE,
<a name="l00214"></a>00214         TIXML_ERROR_OUT_OF_MEMORY,
<a name="l00215"></a>00215         TIXML_ERROR_PARSING_ELEMENT,
<a name="l00216"></a>00216         TIXML_ERROR_FAILED_TO_READ_ELEMENT_NAME,
<a name="l00217"></a>00217         TIXML_ERROR_READING_ELEMENT_VALUE,
<a name="l00218"></a>00218         TIXML_ERROR_READING_ATTRIBUTES,
<a name="l00219"></a>00219         TIXML_ERROR_PARSING_EMPTY,
<a name="l00220"></a>00220         TIXML_ERROR_READING_END_TAG,
<a name="l00221"></a>00221         TIXML_ERROR_PARSING_UNKNOWN,
<a name="l00222"></a>00222         TIXML_ERROR_PARSING_COMMENT,
<a name="l00223"></a>00223         TIXML_ERROR_PARSING_DECLARATION,
<a name="l00224"></a>00224         TIXML_ERROR_DOCUMENT_EMPTY,
<a name="l00225"></a>00225         TIXML_ERROR_EMBEDDED_NULL,
<a name="l00226"></a>00226         TIXML_ERROR_PARSING_CDATA,
<a name="l00227"></a>00227 
<a name="l00228"></a>00228         TIXML_ERROR_STRING_COUNT
<a name="l00229"></a>00229     };
<a name="l00230"></a>00230 
<a name="l00231"></a>00231 <span class="keyword">protected</span>:
<a name="l00232"></a>00232 
<a name="l00233"></a>00233     <span class="comment">// See STL_STRING_BUG</span>
<a name="l00234"></a>00234     <span class="comment">// Utility class to overcome a bug.</span>
<a name="l00235"></a>00235     <span class="keyword">class </span>StringToBuffer
<a name="l00236"></a>00236     {
<a name="l00237"></a>00237       <span class="keyword">public</span>:
<a name="l00238"></a>00238         StringToBuffer( <span class="keyword">const</span> TIXML_STRING&amp; str );
<a name="l00239"></a>00239         ~StringToBuffer();
<a name="l00240"></a>00240         <span class="keywordtype">char</span>* buffer;
<a name="l00241"></a>00241     };
<a name="l00242"></a>00242 
<a name="l00243"></a>00243     <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>*  SkipWhiteSpace( <span class="keyword">const</span> <span class="keywordtype">char</span>*, TiXmlEncoding encoding );
<a name="l00244"></a>00244     <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">bool</span>  IsWhiteSpace( <span class="keywordtype">char</span> c )      
<a name="l00245"></a>00245     { 
<a name="l00246"></a>00246         <span class="keywordflow">return</span> ( isspace( (<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>) c ) || c == <span class="charliteral">'\n'</span> || c == <span class="charliteral">'\r'</span> ); 
<a name="l00247"></a>00247     }
<a name="l00248"></a>00248     <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">bool</span>  IsWhiteSpace( <span class="keywordtype">int</span> c )
<a name="l00249"></a>00249     {
<a name="l00250"></a>00250         <span class="keywordflow">if</span> ( c &lt; 256 )
<a name="l00251"></a>00251             <span class="keywordflow">return</span> IsWhiteSpace( (<span class="keywordtype">char</span>) c );
<a name="l00252"></a>00252         <span class="keywordflow">return</span> <span class="keyword">false</span>;   <span class="comment">// Again, only truly correct for English/Latin...but usually works.</span>
<a name="l00253"></a>00253     }
<a name="l00254"></a>00254 
<a name="l00255"></a>00255     <span class="keyword">virtual</span> <span class="keywordtype">void</span> StreamOut (TIXML_OSTREAM *) <span class="keyword">const </span>= 0;
<a name="l00256"></a>00256 
<a name="l00257"></a>00257 <span class="preprocessor">    #ifdef TIXML_USE_STL</span>
<a name="l00258"></a>00258 <span class="preprocessor"></span>        <span class="keyword">static</span> <span class="keywordtype">bool</span> StreamWhiteSpace( TIXML_ISTREAM * in, TIXML_STRING * tag );
<a name="l00259"></a>00259         <span class="keyword">static</span> <span class="keywordtype">bool</span> StreamTo( TIXML_ISTREAM * in, <span class="keywordtype">int</span> character, TIXML_STRING * tag );
<a name="l00260"></a>00260 <span class="preprocessor">    #endif</span>
<a name="l00261"></a>00261 <span class="preprocessor"></span>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -