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

📄 a beginner's guide to the xml dom.htm

📁 这是一本关于XML的学习的书
💻 HTM
📖 第 1 页 / 共 4 页
字号:
            <p><font size="3">4</font>
          </td>
        </tr>
      </table>
      <p align="JUSTIFY"><font size=3>MSXML</font><font face="宋体" lang="ZH-CN" size=3>解析器实现了一些有用的方法,你在调入一个大的文档时可以用这些方法追踪调入过程的状态。这些方法对从</font><font size=3>Internet</font><font face="宋体" lang="ZH-CN" size=3>上异步的调入文档也很有帮助。</font></p>
      <p align="JUSTIFY"> <font face="宋体" lang="ZH-CN" size=3>要打开一个</font><font size=3>Internet</font><font face="宋体" lang="ZH-CN" size=3>上的文档,你需要提供绝对</font><font size=3>URL</font><font face="宋体" lang="ZH-CN" size=3>,并且必须加</font><font size=3>http://</font><font face="宋体" lang="ZH-CN" size=3>前缀。下面是一个例子。</font></p>
      <p align="JUSTIFY"><b><font size="3">xDoc.async = False</font></b></p>
      <p align="JUSTIFY"><b><font size="3">If xDoc.Load("http://www.develop.com/hp/brianr/cds.xml") 
        Then</font></b></p>
      <p align="JUSTIFY"><b><font size=3>&#9;' </font><font face="宋体" lang="ZH-CN" size=3>文档调入成功</font></b></p>
      <p align="JUSTIFY"> <b><font face="宋体" lang="ZH-CN" size=3>&#9;</font><font size=3>' 
        </font><font face="宋体" lang="ZH-CN" size=3>作我们喜欢作的事</font></b></p>
      <p align="JUSTIFY"><font size="3"><b>Else</b></font></p>
      <p align="JUSTIFY"><b><font size=3>&#9;' </font><font face="宋体" lang="ZH-CN" size=3>文档调入失败</font></b></p>
      <p align="JUSTIFY"><font size="3"><b>End If</b></font></p>
      <p align="JUSTIFY"><font face="宋体" lang="ZH-CN" size=3>将</font><b><font size=3>Async</font></b><font face="宋体" lang="ZH-CN" size=3>属性设置为</font><b><font size=3>False</font></b><font face="宋体" lang="ZH-CN" size=3>,这样在文档调入完成之前,解析器不会将控制权交给你的代码。如果把</font><b><font size=3>Async</font></b><font face="宋体" lang="ZH-CN" size=3>保存为</font><b><font size=3>True</font></b><font face="宋体" lang="ZH-CN" size=3>,你在访问文档时必须检查</font><b><font size=3>ReadyState</font></b><font face="宋体" lang="ZH-CN" size=3>属性或者利用</font><b><font size=3>DOMDocument</font></b><font face="宋体" lang="ZH-CN" size=3>的事件在文档可以访问时提示你的代码。</font></p>
      <p align="JUSTIFY"><font size=3> </font><font face="宋体" lang="ZH-CN" size=3><a name="5"></a>处理错误:</font></p>
      <p align="JUSTIFY"> <font face="宋体" lang="ZH-CN" size=3>你的文档可能因为各种原因而调入失败,最常见的原因是提供给解析器的文档名不正确,另一个常见的原因是</font><font size=3>XML</font><font face="宋体" lang="ZH-CN" size=3>文档不合法。</font></p>
      <p align="JUSTIFY"> <font face="宋体" lang="ZH-CN" size=3>默认的解析器会验证你的文档是否符合某个</font><font size=3>DTD 
        </font><font face="宋体" lang="ZH-CN" size=3>或者</font><font size=3> schema</font><font face="宋体" lang="ZH-CN" size=3>,你可以不让解析器执行验证,在执行</font><b><font size=3>Load</font></b><font face="宋体" lang="ZH-CN" size=3>方法之前,将</font><b><font size=3>DOMDocument</font></b><font face="宋体" lang="ZH-CN" size=3>的属性</font><b><font size=3>ValidateOnParse</font></b><font face="宋体" lang="ZH-CN" size=3>为</font><b><font size=3>False</font></b><font face="宋体" lang="ZH-CN" size=3>。</font></p>
      <p align="JUSTIFY"><b><font size="3">Dim xDoc As MSXML.DOMDocument</font></b></p>
      <p align="JUSTIFY"><b><font size="3">Set xDoc = New MSXML.DOMDocument</font></b></p>
      <p align="JUSTIFY"><b><font size="3">xDoc.validateOnParse = False</font></b></p>
      <p align="JUSTIFY"><b><font size="3">If xDoc.Load("C:\My Documents\cds.xml") 
        Then</font></b></p>
      <p align="JUSTIFY"><b><font size=3> ' </font><font face="宋体" lang="ZH-CN" size=3>文档调入成功</font></b></p>
      <p align="JUSTIFY"><b><font size=3>' </font><font face="宋体" lang="ZH-CN" size=3>作我们喜欢作的事</font></b></p>
      <p align="JUSTIFY"><font size="3"><b>Else</b></font></p>
      <p align="JUSTIFY"><b><font size=3>' </font><font face="宋体" lang="ZH-CN" size=3>文档调入失败</font></b></p>
      <p align="JUSTIFY"><font size="3"><b>End If</b></font></p>
      <p align="JUSTIFY"><font size=3> </font><font face="宋体" lang="ZH-CN" size=3>事先关闭验证功能不是个好主意,它会带来许多问题,至少它会是你提供错误格式的数据给你的用户。</font></p>
      <p align="JUSTIFY"><font size=3> </font><font face="宋体" lang="ZH-CN" size=3>你可以通过访问</font><b><font size=3>ParseError</font></b><font face="宋体" lang="ZH-CN" size=3>对象来从解析器那儿获得有关错误类型的信息。创建一个</font><b><font size=3>IXMLDOMParseError</font></b><font face="宋体" lang="ZH-CN" size=3>界面的引用,然后把它指向文档自身的</font><b><font size=3>ParseError</font></b><font face="宋体" lang="ZH-CN" size=3>对象。</font><b><font size=3>IXMLDOMParseError</font></b><font face="宋体" lang="ZH-CN" size=3>界面实现了七种属性来使你获得错误原因。</font></p>
      <p align="JUSTIFY"> <font face="宋体" lang="ZH-CN" size=3>下面的例子显示了一个信息框,列出了</font><b><font size=3>ParseError</font></b><font face="宋体" lang="ZH-CN" size=3>对象中所有错误信息。</font></p>
      <p align="JUSTIFY"><b><font size="3">Dim xDoc As MSXML.DOMDocument</font></b></p>
      <p align="JUSTIFY"><b><font size="3">Set xDoc = New MSXML.DOMDocument</font></b></p>
      <p align="JUSTIFY"><b><font size="3">If xDoc.Load("C:\My Documents\cds.xml") 
        Then</font></b></p>
      <p align="JUSTIFY"><b><font size=3> ' </font><font face="宋体" lang="ZH-CN" size=3>文档调入成功</font></b></p>
      <p align="JUSTIFY"><b><font size=3>' </font><font face="宋体" lang="ZH-CN" size=3>作我们喜欢作的事</font></b></p>
      <p align="JUSTIFY"><font size="3"><b>Else</b></font></p>
      <p align="JUSTIFY"><b><font size=3>' </font><font face="宋体" lang="ZH-CN" size=3>文档调入失败</font></b></p>
      <p align="JUSTIFY"><font size="3"><b>Dim strErrText As String</b></font></p>
      <p align="JUSTIFY"><font size="3"><b>Dim xPE As MSXML.IXMLDOMParseError</b></font></p>
      <p align="JUSTIFY"><b><font size=3> ' </font><font face="宋体" lang="ZH-CN" size=3>获得</font><font size=3>parseError</font><font face="宋体" lang="ZH-CN" size=3>对象</font></b></p>
      <p align="JUSTIFY"><font size="3"><b>Set xPE = xDoc.parseError</b></font></p>
      <p align="JUSTIFY"><font size="3"><b> With xPE</b></font></p>
      <p align="JUSTIFY"><b><font size=3> strErrText = "</font><font face="宋体" lang="ZH-CN" size=3>你的</font><font size=3>XML 
        Document </font><font face="宋体" lang="ZH-CN" size=3>不能调入</font><font size=3>" 
        &amp; _</font></b></p>
      <p align="JUSTIFY"> <b><font size=3> "</font><font face="宋体" lang="ZH-CN" size=3>原因是</font><font size=3>." 
        &amp; vbCrLf &amp; _</font></b></p>
      <p align="JUSTIFY"> <b><font size=3> "</font><font face="宋体" lang="ZH-CN" size=3>错误</font><font size=3> 
        #: " &amp; .errorCode &amp; ": " &amp; xPE.reason &amp; _</font></b></p>
      <p align="JUSTIFY"> <font size="3"><b>"Line #: " &amp; .Line &amp; vbCrLf 
        &amp; _</b></font></p>
      <p align="JUSTIFY"> <font size="3"><b>"Line Position: " &amp; .linepos &amp; 
        vbCrLf &amp; _</b></font></p>
      <p align="JUSTIFY"> <font size="3"><b>"Position In File: " &amp; .filepos 
        &amp; vbCrLf &amp; _</b></font></p>
      <p align="JUSTIFY"> <font size="3"><b>"Source Text: " &amp; .srcText &amp; 
        vbCrLf &amp; _</b></font></p>
      <p align="JUSTIFY"> <font size="3"><b>"Document URL: " &amp; .url</b></font></p>
      <p align="JUSTIFY"><font size="3"><b> End With</b></font></p>
      <p align="JUSTIFY"></p>
      <p align="JUSTIFY"><font size="3"><b> MsgBox strErrText, vbExclamation</b></font></p>
      <p align="JUSTIFY"><font size="3"><b>End If</b></font></p>
      <p align="JUSTIFY"></p>
      <p align="JUSTIFY"><font size="3"><b>Set xPE = Nothing</b></font></p>
      <p align="JUSTIFY"><font face="宋体" lang="ZH-CN" size=3>你可以利用</font><b><font size=3>parseError</font></b><font face="宋体" lang="ZH-CN" size=3>对象来向你的用户报告错误信息,或者把它写入你个</font><font size=3>Log</font><font face="宋体" lang="ZH-CN" size=3>中,你还可以尝试自己解决遇到的问题。</font></p>
      <p align="JUSTIFY"></p>
      <p align="JUSTIFY"><font face="宋体" lang="ZH-CN" size=3><a name="6"></a>如何从</font><font size=3>XML</font><font face="宋体" lang="ZH-CN" size=3>文档中取得信息:</font></p>
      <p align="JUSTIFY"> <font face="宋体" lang="ZH-CN" size=3>一旦你成功的调入了文档,下一步就是如何从中获得信息了。当你操作文档时,你经常会用到</font><b><font size=3>IXMLDOMNode</font></b><font face="宋体" lang="ZH-CN" size=3>界面,你利用它来读</font><font size=3>/</font><font face="宋体" lang="ZH-CN" size=3>写各个分离的节点元素。在使用它之前,你必须先理解</font><font size=3>MSXML</font><font face="宋体" lang="ZH-CN" size=3>支持的</font><font size=3>13</font><font face="宋体" lang="ZH-CN" size=3>种节点元素类型,下面是最常用的几个。</font></p>
      <p align="LEFT">
      <table BORDER cellspacing=1 cellpadding=7 width=336>
        <tr>
          <td width="52%" valign="TOP" height=30> <b></b>
            <p align="JUSTIFY"><font size=3><b>DOM</b></font><font face="宋体" lang="ZH-CN" size=3>节点类型</font>
          </td>
          <td width="48%" valign="TOP" height=30> 
            <p align="JUSTIFY"><font face="宋体" lang="ZH-CN" size="3">举例</font>
          </td>
        </tr>
        <tr>
          <td width="52%" valign="TOP" height=39> 
            <p align="JUSTIFY"><b><font size="3">NODE_ELEMENT</font></b>
          </td>
          <td width="48%" valign="TOP" height=39> 
            <p align="JUSTIFY"><b><font size="3">&lt;artist type="band"&gt;The 
              Offspring&lt;/artist&gt;</font></b>
          </td>
        </tr>
        <tr>
          <td width="52%" valign="TOP" height=42> 
            <p align="JUSTIFY"><b><font size="3">NODE_ATTRIBUTE</font></b>
          </td>
          <td width="48%" valign="TOP" height=42> 
            <p align="JUSTIFY"><b><font size="3">type="band"&gt;The Offspring</font></b>
          </td>
        </tr>
        <tr>
          <td width="52%" valign="TOP" height=31> 
            <p align="JUSTIFY"><b><font size="3">NODE_TEXT</font></b>
          </td>
          <td width="48%" valign="TOP" height=31> 
            <p align="JUSTIFY"><b><font size="3">The Offspring</font></b>
          </td>

⌨️ 快捷键说明

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