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 成人福利在线免费观看,在线国产一区二区三区,好男人好资源在线视频观看大全

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

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

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

          查看 XML 文件

          查看 XML 文件

          所有主流的瀏覽器中,均能夠查看原始的 XML 文件。

          不要指望 XML 文件會(huì)直接顯示為 HTML 頁(yè)面。

          查看 XML 文件

          <?xml version="1.0" encoding="ISO-8859-1"?>

          - <note>

          <to>Tove</to>

          <from>Jani</from>

          <heading>Reminder</heading>

          <body>Don't forget me this weekend!</body>

          </note>

          查看這個(gè) XML 文件:note.xml

          XML 文檔將顯示為代碼顏色化的根以及子元素。通過(guò)點(diǎn)擊元素左側(cè)的加號(hào)(+)或減號(hào)( - ),可以展開(kāi)或收起元素的結(jié)構(gòu)。要查看原始的 XML 源(不包括 + 和 - 符號(hào)),選擇"查看頁(yè)面源代碼"或從瀏覽器菜單"查看源文件"。

          注釋:在 Safari 中,只有元素的文本將被顯示。要查看原始的 XML,您必須右鍵單擊頁(yè)面,選擇"查看源文件"。

          查看無(wú)效的 XML 文件

          如果一個(gè)錯(cuò)誤的XML文件被打開(kāi),瀏覽器會(huì)報(bào)告錯(cuò)誤。

          請(qǐng)查看這個(gè) XML 文件:note_error.xml

          其他 XML 實(shí)例

          請(qǐng)查看這些 XML 文檔,這會(huì)有助于您建立對(duì) XML 的感性認(rèn)識(shí)。

          一個(gè) XML 的 CD 目錄

          這是一個(gè) CD 集,存儲(chǔ)為 XML 數(shù)據(jù)。

          一個(gè) XML 的植物目錄

          這是一個(gè)來(lái)自植物店的植物目錄,存儲(chǔ)為 XML 數(shù)據(jù)。

          一個(gè)簡(jiǎn)單的食物菜單

          這是一個(gè)來(lái)自餐館的早餐菜單,存儲(chǔ)為 XML 數(shù)據(jù)。

          為什么 XML 顯示這個(gè)樣子?

          XML 文檔不會(huì)攜帶有關(guān)如何顯示數(shù)據(jù)的信息。

          由于 XML 標(biāo)簽由 XML 文檔的作者"發(fā)明",瀏覽器無(wú)法確定像 <table> 這樣一個(gè)標(biāo)簽究竟描述一個(gè) HTML 表格還是一個(gè)餐桌。

          在沒(méi)有任何有關(guān)如何顯示數(shù)據(jù)的信息的情況下,大多數(shù)的瀏覽器都會(huì)僅僅把 XML 文檔顯示為源代碼。

          如您還有不明白的可以在下面與我留言或是與我探討QQ群308855039,我們一起飛!

          嘍,你好啊,我是雷工!

          之前有朋友在群里聊XML文件操作的問(wèn)題,今天正好學(xué)習(xí)相關(guān)內(nèi)容,

          以下為學(xué)習(xí)筆記。

          01 XML介紹

          ①:XML是eXtensible Markup Language的縮寫,即擴(kuò)展標(biāo)記語(yǔ)言。

          ②:XML是一種可以用來(lái)創(chuàng)建自定義的標(biāo)記語(yǔ)言,由W3C(萬(wàn)維網(wǎng)協(xié)會(huì))創(chuàng)建,用來(lái)克服HTML的局限。

          ③:功能區(qū)別:XML主要用于數(shù)據(jù)的存儲(chǔ)和傳遞,節(jié)點(diǎn)數(shù)量不限,可以自由擴(kuò)展;HTML主要用于數(shù)據(jù)顯示,有多少節(jié)點(diǎn)是固定的。

          02 XML文檔的格式要求

          ①:確定且唯一的根元素;

          ②:開(kāi)始標(biāo)簽和結(jié)束標(biāo)簽相匹配;

          ③:元素標(biāo)簽的正確嵌套;

          ④:屬性值要用引號(hào)括起來(lái);

          ⑤:同一個(gè)元素的屬性不能重復(fù)。

          03 XML語(yǔ)法要求

          【1】元素:<標(biāo)簽>文本內(nèi)容</標(biāo)簽>;

          【2】處理指令:<?xml version="1.0"?>;

          【3】注釋:<!--這是一個(gè)xml注釋-->;

          【4】屬性:<salary currency=“US$”>10000</salary>;

          04 XML文件

          4.1、添加X(jué)ML文件

          在測(cè)試程序中添加類,選擇XML文件,填寫名稱“LeiGongXMLFile1”,然后點(diǎn)擊【添加】按鈕。

          4.2、編輯XML文件

          在文件中添加如下內(nèi)容:

          <?xml version="1.0" encoding="utf-8" ?>
          <Authors>
           <Author>
           <AutName>雷工</AutName>
           <AutAge>18</AutAge>
           <Gender>男</Gender>
           <Account>雷工筆記</Account>
           </Author>
           <Author>
           <AutName>康工</AutName>
           <AutAge>17</AutAge>
           <Gender>男</Gender>
           <Account>康工筆記</Account>
           </Author>
           <Author>
           <AutName>老王</AutName>
           <AutAge>16</AutAge>
           <Gender>男</Gender>
           <Account>隔壁老王</Account>
           </Author>
           <Author>
           <AutName>小陳</AutName>
           <AutAge>19</AutAge>
           <Gender>女</Gender>
           <Account>小陳美食</Account>
           </Author>
           <Edition>
           <EdiInfo ediNO="1.9" ediTime="2024-04-28">版本信息</EdiInfo>
           </Edition>
          </Authors>

          05 UI設(shè)計(jì)

          5.1、添加控件

          根據(jù)功能需求,添加UI界面的控件。

          添加一個(gè)DataGridView控件、兩個(gè)Button控件,控件的屬性設(shè)置可參考合集《賬號(hào)管理系統(tǒng)相關(guān)文章

          5.2、效果演示

          06 XML文件讀取

          6.1、讀取思路

          ①:引入命名空間;

          ②:創(chuàng)建文檔對(duì)象;

          ③:加載XML文檔;

          ④:獲取根節(jié)點(diǎn);

          ⑤:遍歷節(jié)點(diǎn)并封裝數(shù)據(jù);

          6.2、代碼如下

          ①:引入命名空間

          using System.Xml;

          ②:加載XML文件

          private void btnLoadXml_Click(object sender, EventArgs e)
          {
           //創(chuàng)建XML文檔操作對(duì)象
           XmlDocument objDoc=new XmlDocument();
           //加載XML文件到文檔對(duì)象中
           objDoc.Load("F:\\F004-C#\\B002_xiangmu\\A002_FileOperation\\LeiGongXMLDemo\\LeiGongXMLFile1.xml");
           //獲取XML文檔根目錄
           XmlNode xmlNode=objDoc.DocumentElement;
           //創(chuàng)建對(duì)象集合
           List<Author> list=new List<Author>();
           //遍歷根節(jié)點(diǎn)(根節(jié)點(diǎn)包含所有節(jié)點(diǎn))
           foreach(XmlNode node in xmlNode.ChildNodes)
           {
          if(node.Name=="Author")
          {
           Author author=new Author();
           foreach(XmlNode xmlNode1 in node)//遍歷子節(jié)點(diǎn)
           {
          switch(xmlNode1.Name)
          {
           case "AutName":
          author.AutName=xmlNode1.InnerText;
          break;
           case "AutAge":
          author.AutAge=Convert.ToInt16(xmlNode1.InnerText);
          break;
           case "Gender":
          author.Gender=xmlNode1.InnerText;
          break;
           case "Account":
          author.Account=xmlNode1.InnerText;
          break;
          }
           }
           list.Add(author);
          }
           }
           this.dgvAutList.DataSource=list;
          }

          ③:顯示版本信息

          private void btnShowVersion_Click(object sender, EventArgs e)
          {
           //創(chuàng)建XML讀取器
           XmlTextReader xmlTextReader=new XmlTextReader("F:\\F004-C#\\B002_xiangmu\\A002_FileOperation\\LeiGongXMLDemo\\LeiGongXMLFile1.xml");
           string info=string.Empty;
           //循環(huán)查詢
           while (xmlTextReader.Read())
           {
          if(xmlTextReader.Name=="EdiInfo")
          {
           info="版本:" + xmlTextReader.GetAttribute("ediNO") + "發(fā)布時(shí)間:" + xmlTextReader.GetAttribute("ediTime");
           break;
          }
           }
           MessageBox.Show(info,"版本信息");
          }

          07 XML文件讀取總結(jié)

          7.1、常用對(duì)象

          ①:XmlDocument對(duì)象表示XML整個(gè)文檔;

          ②:XmlNode對(duì)象表示XML文件的單個(gè)節(jié)點(diǎn);

          7.2、常用屬性及說(shuō)明

          對(duì)象

          屬性和方法

          說(shuō)明

          XmlDocument

          DocumentElement屬性

          獲取根節(jié)點(diǎn)


          ChildNodes屬性

          獲取所有子節(jié)點(diǎn)


          Load()方法

          讀取整個(gè)XML的結(jié)構(gòu)

          XmlNode

          InnerText屬性

          當(dāng)前節(jié)點(diǎn)的值


          Name屬性

          當(dāng)前節(jié)點(diǎn)的名字


          ChildNodes屬性

          當(dāng)前所有節(jié)點(diǎn)的所有子節(jié)點(diǎn)

          、XML是什么?

          萬(wàn)維網(wǎng)協(xié)會(huì)推出的一套數(shù)據(jù)交換標(biāo)準(zhǔn)——XML,是一種可擴(kuò)展的標(biāo)記語(yǔ)言,被設(shè)計(jì)用來(lái)傳輸和存儲(chǔ)數(shù)據(jù)。XML 可用于定義 Web 網(wǎng)頁(yè)上的文檔元素以及復(fù)雜數(shù)據(jù)的表述和傳輸。

          Extensible Markup Language,簡(jiǎn)稱 XML,中文含義是可擴(kuò)展標(biāo)記語(yǔ)言,該語(yǔ)言與 HTML 類似,主要功能是傳輸數(shù)據(jù)、儲(chǔ)存數(shù)據(jù)和共享數(shù)據(jù)。XML 語(yǔ)言沒(méi)有規(guī)定的標(biāo)簽體,需要自定義標(biāo)簽,是一種自我描述的語(yǔ)言。XML 與 HTML 有著本質(zhì)的區(qū)別,XML 傳輸和存儲(chǔ)數(shù)據(jù),而 HTML 用來(lái)顯示數(shù)據(jù)。

          XML 的最大特點(diǎn)是自我描述和任意擴(kuò)展,當(dāng)用其描述數(shù)據(jù)時(shí),用戶可以根據(jù)需要,組織符合 XML 規(guī)范形式的任意內(nèi)容,并且標(biāo)簽的名稱也可以由用戶指定。

          圖片來(lái)源網(wǎng)絡(luò)

          二、XML的結(jié)構(gòu)

          例如,一個(gè)描述書籍的XML文檔可能如下:

          <?xml version="1.0" encoding="UTF-8" ?> <!-- 文檔聲明,默認(rèn)編碼為UTF-8 --><!DOCTYPE note SYSTEM "book.dtd"><book id="1">    <name>Java核心技術(shù)</name>    <author>Cay S. Horstmann</author>    <isbn lang="CN">1234567</isbn>    <tags>        <tag>Java</tag>        <tag>Network</tag>    </tags>    <pubDate/></book>
          XML有固定的結(jié)構(gòu),首行必定是<?xml version="1.0"?>,可以加上可選的編碼。緊接著,如果以類似<!DOCTYPE note SYSTEM "book.dtd">聲明的是文檔定義類型(DTD:Document Type Definition),DTD是可選的。接下來(lái)是XML的文檔內(nèi)容,一個(gè)XML文檔有且僅有一個(gè)根元素,根元素可以包含任意個(gè)子元素,元素可以包含屬性,例如,<isbn lang="CN">1234567</isbn>包含一個(gè)屬性lang="CN",且元素必須正確嵌套。如果是空元素,可以用<tag/>表示。

          XML有幾個(gè)特點(diǎn):一是純文本,默認(rèn)使用UTF-8編碼,二是可嵌套,適合表示結(jié)構(gòu)化數(shù)據(jù)。如果把XML內(nèi)容存為文件,那么它就是一個(gè)XML文件,例如book.xml。此外,XML內(nèi)容經(jīng)常通過(guò)網(wǎng)絡(luò)作為消息傳輸。

          三、一些重要語(yǔ)法規(guī)則和知識(shí)

          所有 XML 元素都須有關(guān)閉標(biāo)簽

          在 HTML,經(jīng)常會(huì)看到?jīng)]有關(guān)閉標(biāo)簽的元素:

          <p>This is a paragraph<p>This is another paragraph

          在 XML 中,省略關(guān)閉標(biāo)簽是非法的。所有元素都必須有關(guān)閉標(biāo)簽:

          <p>This is a paragraph</p><p>This is another paragraph</p>  

          注釋:您也許已經(jīng)注意到 XML 聲明沒(méi)有關(guān)閉標(biāo)簽。這不是錯(cuò)誤。聲明不屬于XML本身的組成部分。它不是 XML 元素,也不需要關(guān)閉標(biāo)簽。

          XML 標(biāo)簽對(duì)大小寫敏感

          XML 元素使用 XML 標(biāo)簽進(jìn)行定義。

          XML 標(biāo)簽對(duì)大小寫敏感。在 XML 中,標(biāo)簽 <Letter> 與標(biāo)簽 <letter> 是不同的。

          必須使用相同的大小寫來(lái)編寫打開(kāi)標(biāo)簽和關(guān)閉標(biāo)簽:

          <Message>這是錯(cuò)誤的。</message><message>這是正確的。</message> 

          注釋:打開(kāi)標(biāo)簽和關(guān)閉標(biāo)簽通常被稱為開(kāi)始標(biāo)簽和結(jié)束標(biāo)簽。不論您喜歡哪種術(shù)語(yǔ),它們的概念都是相同的。

          XML 必須正確地嵌套

          在 HTML 中,常會(huì)看到?jīng)]有正確嵌套的元素:

          <b><i>This text is bold and italic</b></i>

          在 XML 中,所有元素都必須彼此正確地嵌套:

          <b><i>This text is bold and italic</i></b>

          在上例中,正確嵌套的意思是:由于 <i> 元素是在 <b> 元素內(nèi)打開(kāi)的,那么它必須在 <b> 元素內(nèi)關(guān)閉。

          XML 文檔必須有根元素

          所有的 XML 文檔有且只有一個(gè)根元素來(lái)定義整個(gè)文檔。

          XML 文檔必須有一個(gè)元素是所有其他元素的父元素。該元素稱為根元素。

          <root>  <child>    <subchild>.....</subchild>  </child></root>

          XML 的屬性值須加引號(hào)

          與 HTML 類似,XML 也可擁有屬性(名稱/值的對(duì))。

          在 XML 中,XML 的屬性值須加引號(hào)。請(qǐng)研究下面的兩個(gè) XML 文檔。第一個(gè)是錯(cuò)誤的,第二個(gè)是正確的:

          <note date=08/08/2008><to>George</to><from>John</from></note> <note date="08/08/2008"><to>George</to><from>John</from></note> 

          在第一個(gè)文檔中的錯(cuò)誤是,note 元素中的 date 屬性沒(méi)有加引號(hào)。

          實(shí)體引用

          在 XML 中,一些字符擁有特殊的意義。

          如果你把字符 "<" 放在 XML 元素中,會(huì)發(fā)生錯(cuò)誤,這是因?yàn)榻馕銎鲿?huì)把它當(dāng)作新元素的開(kāi)始。

          這樣會(huì)產(chǎn)生 XML 錯(cuò)誤:

          <message>if salary < 1000 then</message>

          為了避免這個(gè)錯(cuò)誤,請(qǐng)用實(shí)體引用來(lái)代替 "<" 字符:

          <message>if salary < 1000 then</message> 

          在 XML 中,有 5 個(gè)預(yù)定義的實(shí)體引用:

          <<小于>>大于&&和號(hào)''單引號(hào)""引號(hào)

          注釋:在 XML 中,只有字符 "<" 和 "&" 確實(shí)是非法的。大于號(hào)是合法的,但是用實(shí)體引用來(lái)代替它是一個(gè)好習(xí)慣。

          XML 中的注釋

          在 XML 中編寫注釋的語(yǔ)法與 HTML 的語(yǔ)法很相似:

          <!-- This is a comment --> 

          在 XML 中,空格會(huì)被保留

          HTML 會(huì)把多個(gè)連續(xù)的空格字符裁減(合并)為一個(gè).在 XML 中,文檔中的空格不會(huì)被刪節(jié)。

          XML 以 LF 存儲(chǔ)換行

          在 Windows 應(yīng)用程序中,換行通常以一對(duì)字符來(lái)存儲(chǔ):回車符 (CR) 和換行符 (LF)。這對(duì)字符與打字機(jī)設(shè)置新行的動(dòng)作有相似之處。在 Unix 應(yīng)用程序中,新行以 LF 字符存儲(chǔ)。而 Macintosh 應(yīng)用程序使用 CR 來(lái)存儲(chǔ)新行。

          什么是 XML 元素?

          XML 元素指的是從(且包括)開(kāi)始標(biāo)簽直到(且包括)結(jié)束標(biāo)簽的部分。

          元素可包含其他元素、文本或者兩者的混合物。元素也可以擁有屬性。

          <bookstore><book category="CHILDREN">  <title>Harry Potter</title>   <author>J K. Rowling</author>   <year>2005</year>   <price>29.99</price> </book><book category="WEB">  <title>Learning XML</title>   <author>Erik T. Ray</author>   <year>2003</year>   <price>39.95</price> </book></bookstore> 

          在上例中,<bookstore> 和<book>都擁有元素內(nèi)容,因?yàn)樗鼈儼似渌亍?lt;author>只有文本內(nèi)容,因?yàn)樗鼉H包含文本。

          在上例中,只有 <book> 元素?fù)碛袑傩?(category="CHILDREN")。

          XML 命名規(guī)則

          XML 元素必須遵循以下命名規(guī)則:

          • 名稱可以含字母、數(shù)字以及其他的字符
          • 名稱不能以數(shù)字或者標(biāo)點(diǎn)符號(hào)開(kāi)始
          • 名稱不能以字符 “xml”(或者 XML、Xml)開(kāi)始
          • 名稱不能包含空格

          可使用任何名稱,沒(méi)有保留的字詞。

          最佳命名習(xí)慣

          使名稱具有描述性。使用下劃線的名稱也很不錯(cuò)。

          名稱應(yīng)當(dāng)比較簡(jiǎn)短,比如:<book_title>,而不是:<the_title_of_the_book>。

          避免 "-" 字符。如果您按照這樣的方式進(jìn)行命名:"first-name",一些軟件會(huì)認(rèn)為你需要提取第一個(gè)單詞。

          避免 "." 字符。如果您按照這樣的方式進(jìn)行命名:"first.name",一些軟件會(huì)認(rèn)為 "name" 是對(duì)象 "first" 的屬性。

          避免 ":" 字符。冒號(hào)會(huì)被轉(zhuǎn)換為命名空間來(lái)使用(稍后介紹)。

          XML 文檔經(jīng)常有一個(gè)對(duì)應(yīng)的數(shù)據(jù)庫(kù),其中的字段會(huì)對(duì)應(yīng) XML 文檔中的元素。有一個(gè)實(shí)用的經(jīng)驗(yàn),即使用數(shù)據(jù)庫(kù)的名稱規(guī)則來(lái)命名 XML 文檔中的元素。

          非英語(yǔ)的字母比如 éòá 也是合法的 XML 元素名,不過(guò)需要留意當(dāng)軟件開(kāi)發(fā)商不支持這些字符時(shí)可能出現(xiàn)的問(wèn)題。

          XML 屬性

          從 HTML,你會(huì)回憶起這個(gè):<img src="computer.gif">。"src" 屬性提供有關(guān)<img> 元素的額外信息。

          在 HTML 中(以及在 XML 中),屬性提供有關(guān)元素的額外信息:

          <img src="computer.gif"><a href="demo.asp"> 

          屬性通常提供不屬于數(shù)據(jù)組成部分的信息。在下面的例子中,文件類型與數(shù)據(jù)無(wú)關(guān),但是對(duì)需要處理這個(gè)元素的軟件來(lái)說(shuō)卻很重要:

          <file type="gif">computer.gif</file>

          XML 屬性必須加引號(hào)

          屬性值必須被引號(hào)包圍,不過(guò)單引號(hào)和雙引號(hào)均可使用。比如一個(gè)人的性別,person 標(biāo)簽可以這樣寫:

          <person sex="female">

          或者這樣也可以:

          <person sex='female'>

          注釋:如果屬性值本身包含雙引號(hào),那么有必要使用單引號(hào)包圍它,就像這個(gè)例子:

          <gangster name='George "Shotgun" Ziegler'>

          或者可以使用實(shí)體引用:

          <gangster name="George "Shotgun" Ziegler">

          四、XML拓展和高級(jí)用法

          • JDK 中的 XML API
          • DOM 解析 XML
          • SAX解析XML
          • DOM4j解析XML
          • XML CDATA
          • ……

          可參閱:

          1. w3school:https://www.w3school.com.cn/xml/index.asp
          2. C語(yǔ)言中文網(wǎng):http://c.biancheng.net/view/1632.html
          3. 廖雪峰Java教程:https://www.liaoxuefeng.com/wiki/1252599548343744/1255945389334784

          本文由以上文章整理


          點(diǎn)擊下方“了解更多”查看網(wǎng)頁(yè)原文,謝謝您的關(guān)注!


          主站蜘蛛池模板: 国产韩国精品一区二区三区| 精品一区二区久久久久久久网站| 2021国产精品一区二区在线| 日韩精品中文字幕视频一区| 国产成人无码一区二区在线播放| 国产日韩精品一区二区在线观看播放 | 亚洲AV无码国产一区二区三区 | 日韩精品一区二区三区中文| 三级韩国一区久久二区综合| 正在播放国产一区| 一区二区无码免费视频网站| 91video国产一区| 91视频一区二区| 久久精品无码一区二区无码| 久久精品一区二区东京热| 国产成人无码一区二区在线观看| 肥臀熟女一区二区三区| 国产一区二区视频在线观看| 无码精品久久一区二区三区| 日本免费精品一区二区三区| 无码人妻一区二区三区精品视频| 国产在线无码视频一区| 视频一区二区三区免费观看| 国产精品一区二区毛卡片| 人妻互换精品一区二区| 亚洲日本va一区二区三区| 国产精品无码一区二区三区毛片| 99国产精品欧美一区二区三区| 人妻视频一区二区三区免费| 国产免费av一区二区三区| 国产激情精品一区二区三区 | 亚洲一区二区三区高清不卡| 亚洲一区二区三区在线| 久久久久人妻精品一区二区三区| 亚洲高清日韩精品第一区| 在线精品视频一区二区| 精品视频一区二区三区在线播放| 人妻无码一区二区三区| 无码人妻精品一区二区三区夜夜嗨| 无码欧精品亚洲日韩一区| 亚洲AV日韩综合一区尤物|