Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 久久浮力影院,久久91精品国产91久久跳舞,国产免费又色又爽视频

          整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          JavaScript中裝載XML文檔

          E和FierFox瀏覽器對(duì)于這裝載同域的XML文件和裝載XML字符串這兩種情況,分別有各自的處理方式。IE的解析器支持XML文件和XML字符串的加載,而火狐瀏覽器使用單獨(dú)的解析器把XML載入內(nèi)存,然后轉(zhuǎn)換為可通過JS訪問的XML DOM對(duì)象。

          以下是js代碼:

          /* 
           * 封裝IE和Firefox類瀏覽器中裝載同域XML或XML字符串的方法,
           * @param flag true表示裝載XML的文件,false表示裝載XML的字符串
           * @param xmldoc flag為true表示XML文件的路徑,flag為false表示XML字符串
           */
           
          function loadXML(flag,xmldoc){
           if(window.activeXObject) {
           //IE瀏覽器
           //創(chuàng)建空的XML對(duì)象
           var activexName = ["MSXML2.DOMDdcument","Miscrosoft.XmlDom"];
           var xmlObj;
           for(var i = 0; i < actviexName.length;i++){
           try{
           xmlObj = new ActiveXObject(activeName[i]);
           break;
           }catch(e){
           
           }
           }
           if(xmlObj){
           //同步方式裝載XML數(shù)據(jù),確保在文檔完全加載之前解析器不會(huì)繼續(xù)腳本的執(zhí)行
           xmlObj.async = false;
           if(flag){
           //load用于加載文件,loadXML用于加載字符串
           //裝載XML文件
           xmlObj.load(xmldoc);
           }else{
           //裝載XML的字符串
           xmlObj.loadXML(xmldoc);
           }
           //返回根節(jié)點(diǎn)
           return xmlObj;
           //返回根元素節(jié)點(diǎn)
           return xmlObj.documentElement;
           }else{
           alert("裝載XML文檔的對(duì)象創(chuàng)建失敗");
           return null;
           }
           }else if(document.implementation.creatDocument){
           //針對(duì)Firefox類瀏覽器
           var xmlObj;
           if(flag){
           //裝載XML文件
           //先創(chuàng)建一個(gè)空的xml dom對(duì)象
           xmlObj = document.implementation.creatDocument("","",null);
           if(xmlObj){
           //同步方式進(jìn)行裝載
           xmlObj.async = false;
           xmlObj.load(xmldoc);
           return xmlObj.documentElement;
           }else{
           alert("裝載XML文檔的對(duì)象創(chuàng)建失敗");
           return null;
           }
           }else{
           //裝載XML的字符串
           //創(chuàng)建一個(gè)dom解析器
           xmlObj = new DOMParser();
           //把xml字符串解析成要返回的dom對(duì)象
           var docRoot = xmlObj.parerFromString(xmldoc,"test/xml");
           return docRoot.documentElement;
           }
           }
           alert("裝載XML文檔的對(duì)象創(chuàng)建失敗");
           return null;
          }
          

          html代碼

          <html>
           <head>
           <title>TODO supply a title</title>
           <meta charset="UTF-8">
           <meta name="viewport" content="width=device-width, initial-scale=1.0">
           <script type="text/javascript" src="load.js"></script>
           <script type="text/javascript">
           function test(){
           //裝載同域的XML文件
           var domxml1 = loadXML(true,"test.xml");
           //裝載XML字符串
           var domxml2 = loadXML(true,"<xml>123</xml>");
           alert("");
           }
           </script>
           </head>
           <body>
           <input type="button" value="test" onclick="test()"/>
           </body>
          </html>
          

          XML頁內(nèi)容

          <?xml version="1.0" encoding="UTF-8"?>
          <root>
           木子松就是我,我就是木子松
          </root>
          

          總結(jié)

          對(duì)于裝載同域的XML文件,IE瀏覽器和火狐類瀏覽器都是先創(chuàng)建一個(gè)空的XML文檔對(duì)象,然后用“xmlDoc.load(“**.xml”)”告知解析器加載名為**.xml的XML文檔

          對(duì)于裝載XML字符串,IE瀏覽器和裝載XML文件的方式一樣,利用微軟內(nèi)建的解析器加載XML字符串;而火狐類瀏覽器,則是通過"var parser = new DOMParser()"創(chuàng)建dom解析器,然后利用方法parserFromString()加載 XML字符串。另外DOMParser對(duì)象的load()方法可用于加載文件。

          跨域訪問處于安全方面的原因,現(xiàn)在的瀏覽器不允許跨域訪問。如果想跨域訪問,則必須把XML文件放到自己的服務(wù)器上,否則,xmlDoc.load()將產(chǎn)生錯(cuò)誤“Access is denied”。

          入dll

          1.通過NuGet安裝dll(2種方法)

          1.1可以在Visual Studio中打開“解決方案資源管理器”,鼠標(biāo)右鍵點(diǎn)擊“引用”,“管理NuGet包”,然后搜索“Free Spire.Doc”,點(diǎn)擊“安裝”。等待程序安裝完成。

          1.2將以下內(nèi)容復(fù)制到PM控制臺(tái)安裝:

          Install-Package FreeSpire.Doc -Version 10.2

          2.手動(dòng)添加dll引用

          可通過手動(dòng)下載包到本地,然后解壓,找到BIN文件夾下的Spire.Doc.dll。然后在Visual Studio中打開“解決方案資源管理器”,鼠標(biāo)右鍵點(diǎn)擊“引用”,“添加引用”,將本地路徑BIN文件夾下的dll文件添加引用至程序。


          將HTML轉(zhuǎn)為XML

          轉(zhuǎn)換時(shí),可參考如下代碼來進(jìn)行:

          1. 創(chuàng)建Document類的對(duì)象。
          2. 調(diào)用Document.LoadFromFile(string fileName, FileFormat fileFormat)方法加載HTML文檔。
          3. 通過Document.SaveToFile(string fileName, FileFormat fileFormat)方法保存為XML格式到指定路徑。

          C#

          using Spire.Doc;
          
          namespace HTMLtoXML
          {
              class Program
              {
                  static void Main(string[] args)
                  {
                      //創(chuàng)建Document類的對(duì)象
                      Document doc = new Document();
          
                      //加載html文件
                      doc.LoadFromFile("sample.html",FileFormat.Html);
          
                      //保存為XML格式
                      doc.SaveToFile("HTMLtoXML.xml", FileFormat.Xml);
                      System.Diagnostics.Process.Start("HTMLtoXML.xml");
                  }
              }
          }

          轉(zhuǎn)換效果:

          —End—

          文以C#及VB.NET后端程序代碼示例展示如何將HTML轉(zhuǎn)為XML文件。轉(zhuǎn)換時(shí),調(diào)用Word API -Free Spire.Doc for .NET 提供的文檔加載方法及文檔保存的方法來實(shí)現(xiàn)。轉(zhuǎn)換的代碼步驟很簡(jiǎn)單,具體可參考以下內(nèi)容。


          引入dll

          1.通過NuGet安裝dll(2種方法)

          1.1可以在Visual Studio中打開“解決方案資源管理器”,鼠標(biāo)右鍵點(diǎn)擊“引用”,“管理NuGet包”,然后搜索“Free Spire.Doc”,點(diǎn)擊“安裝”。等待程序安裝完成。

          1.2將以下內(nèi)容復(fù)制到PM控制臺(tái)安裝:

          Install-Package FreeSpire.Doc -Version 10.2

          2.手動(dòng)添加dll引用

          可通過手動(dòng)下載包到本地,然后解壓,找到BIN文件夾下的Spire.Doc.dll。然后在Visual Studio中打開“解決方案資源管理器”,鼠標(biāo)右鍵點(diǎn)擊“引用”,“添加引用”,將本地路徑BIN文件夾下的dll文件添加引用至程序。


          將HTML轉(zhuǎn)為XML

          轉(zhuǎn)換時(shí),可參考如下代碼來進(jìn)行:

          1. 創(chuàng)建Document類的對(duì)象。
          2. 調(diào)用Document.LoadFromFile(string fileName, FileFormat fileFormat)方法加載HTML文檔。
          3. 通過Document.SaveToFile(string fileName, FileFormat fileFormat)方法保存為XML格式到指定路徑。

          C#

          using Spire.Doc;
          
          namespace HTMLtoXML
          {
              class Program
              {
                  static void Main(string[] args)
                  {
                      //創(chuàng)建Document類的對(duì)象
                      Document doc = new Document();
          
                      //加載html文件
                      doc.LoadFromFile("sample.html",FileFormat.Html);
          
                      //保存為XML格式
                      doc.SaveToFile("HTMLtoXML.xml", FileFormat.Xml);
                      System.Diagnostics.Process.Start("HTMLtoXML.xml");
                  }
              }
          }

          vb.net

          Imports Spire.Doc
          
          Namespace HTMLtoXML
              Class Program
                  Private Shared Sub Main(args As String())
                      '創(chuàng)建Document類的對(duì)象
                      Dim doc As New Document()
          
                      '加載html文件
                      doc.LoadFromFile("sample.html", FileFormat.Html)
          
                      '保存為XML格式
                      doc.SaveToFile("HTMLtoXML.xml", FileFormat.Xml)
                      System.Diagnostics.Process.Start("HTMLtoXML.xml")
                  End Sub
              End Class
          End Namespace

          轉(zhuǎn)換效果:

          —End—


          主站蜘蛛池模板: 蜜桃视频一区二区| 亚洲国产精品成人一区| 伊人久久精品一区二区三区| 精品女同一区二区三区免费站| 日本不卡一区二区三区视频| 人妻少妇一区二区三区| 国产色精品vr一区区三区| 91一区二区三区| 91视频一区二区三区| 国产AV午夜精品一区二区三区| 国产精品成人一区无码| 日本一区二区三区在线视频| 东京热人妻无码一区二区av| 精品国产aⅴ无码一区二区| 亚洲AV无码一区二区三区鸳鸯影院 | 人妻无码视频一区二区三区| 色综合视频一区中文字幕| 精品国产一区二区三区色欲 | 人妻AV一区二区三区精品| 亚洲av成人一区二区三区| 国产精品无码一区二区三区不卡| 一区国严二区亚洲三区| 无码少妇一区二区性色AV | 亚洲无线码一区二区三区| 国产精品福利一区二区| 亚洲日本一区二区三区在线不卡| 久久久久人妻精品一区| 福利电影一区二区| 久久精品一区二区三区AV| 日韩经典精品无码一区| 少妇无码一区二区二三区| 老湿机一区午夜精品免费福利| 色妞色视频一区二区三区四区| 国产在线观看一区二区三区四区 | 亚洲av成人一区二区三区在线播放| 国产精品一区二区三区免费| 麻豆国产在线不卡一区二区| 久久久一区二区三区| 亚洲A∨精品一区二区三区| 亚洲一区二区无码偷拍| 国产内射999视频一区|