




已閱讀5頁,還剩60頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第十章 可擴展標記語言,在線教務輔導網(wǎng):,教材其余課件及動畫素材請查閱在線教務輔導網(wǎng),QQ:349134187 或者直接輸入下面地址:,,學習目的,掌握XML可擴展標記語言的基本概念和使用。 能夠建立、顯示和處理XML文檔數(shù)據(jù) 能夠?qū)ML數(shù)據(jù)和數(shù)據(jù)庫數(shù)據(jù)進行轉(zhuǎn)換,主要內(nèi)容,10.1 XML基本概念 10.2 XML文檔顯示 10.3 查詢XML文檔 10.4 編輯XML文檔 10.5 XML架構 10.6 數(shù)據(jù)庫和XML,10.1 XML基本概念,XML是基于文本的標記語言,它通過有意義的標簽以結構化的格式存儲數(shù)據(jù),能夠描述矢量圖形、數(shù)學公式、化學符號等數(shù)據(jù),這種格式可以被任何一種計算機系統(tǒng)所解釋。XML描述數(shù)據(jù)的另一優(yōu)點是數(shù)據(jù)和顯示數(shù)據(jù)的格式分離。,10.1.1 SGML(標準通用標記語言),SGML(Standard Generalized Markup Language)是一種通用的文檔結構描述標記語言,為文檔數(shù)據(jù)的標記提供了異常強大的工具,同時具有極好的擴展性,因此在數(shù)據(jù)分類和索引中非常有用。但SGML復雜度太高,不適合網(wǎng)絡的日常應用,加上開發(fā)成本高、不被主流瀏覽器所支持等原因,使得SGML推廣受到阻礙。,10.1.2 XML(可擴展標記語言),XML(eXtensible Markup Language)是由W3C于1998年2月發(fā)布的標準,它是SGML的一個簡化子集,它具有SGML的豐富功能,同時易于使用。XML優(yōu)點如下: XML簡單易用,功能強大。 XML允許各個組織、個人建立適合自己需要的標記集合,并且這些標記可以用通用的工具顯示。 XML的最大優(yōu)點在于它的數(shù)據(jù)存儲格式不受顯示格式的制約。 通過有意義的標簽以結構化的格式存儲數(shù)據(jù),用一種開放的自我描述方式定義數(shù)據(jù)結構。 XML還有其他許多優(yōu)點,比如它有利于不同系統(tǒng)之間的信息交流,完全可以充當網(wǎng)際語言,并有希望成為數(shù)據(jù)和文檔交換的標準。,10.1.3 XML的文檔格式,首先介紹XML文檔內(nèi)容的基本單元元素,它的語法格式如下: 標簽文本內(nèi)容/標簽 元素是由起始標簽、元素內(nèi)容和結束標簽組成。用戶把要描述的數(shù)據(jù)對象放在起始標簽和結束標簽之間。例如:王平。無論文本內(nèi)容有多長或者多么復雜,XML元素中可以再嵌套別的元素,這樣使相關信息構成等級結構。用這樣的方法定義XML文檔數(shù)據(jù)和數(shù)據(jù)結構。,【例10.1】下面的例子是一個描述學生情況的XML文檔,用IE瀏覽器(5.0以上版本)瀏覽e10_1.xml文件,效果如圖10.1。完整XML文件e10_1.xml內(nèi)容如下: 張三 男 20 李四 女 19 ,XML文檔中出現(xiàn)的有效對象是: 聲明:聲明給XML解析器提供信息,使其能夠正確解釋文檔內(nèi)容,它的起始標識是“。 注釋:注釋是XML文件中用作解釋的字符數(shù)據(jù),XML處理器不對它們進行任何處理。注釋文本被“標記,注釋可以出現(xiàn)在XML元素間的任何地方,但是不可以嵌套。 根元素和子元素:如果一個元素從文件頭的序言部分之后開始,一直到文件尾,包含了文件中所有的數(shù)據(jù)信息,稱為根元素。XML元素是可嵌套的,那么被嵌套在內(nèi)的元素稱為子元素。一個XML文檔中有且僅有一個根元素,其他所有的元素都是它的子元素。 屬性:屬性給元素提供進一步的說明信息,它必須出現(xiàn)在起始標簽中。屬性以名稱/值成對出現(xiàn),屬性名不能重復,名稱與取值之間用等號分隔,取值用引號括起來。,XML文檔的基本結構:XML文檔的基本結構由序言部分和一個根元素組成。序言包括了XML聲明和DTD或XSD聲明,DTD(Document Type Define,文檔類型定義)和XSD(XML Schema,XML架構)都是用來描述XML文檔的數(shù)據(jù)結構的(參見10.5節(jié))。例如,在例10.1的XML文件e10_1.xml文檔前面加上如下的序言部分,就構成了一個完整的XML文檔: ,格式良好的(Well-Formed)XML文檔:一個XML文檔首先應當是格式良好的,格式良好XML文檔的正式定義位于:/TR/REC-xml。格式良好的XML文檔除了要滿足根元素惟一的特性之外,還包括: (1)起始標簽和結束標簽應當匹配,結束標簽是必不可少的。 (2)大小寫應一致,XML對字母的大小寫是敏感的,和是完全不同的兩個標簽,所以結束標簽在匹配時一定要注意大小寫一致。 (3)元素應當正確嵌套,子元素應當完全包括在父輩元素中,下面例子就是錯誤嵌套: ,正確的嵌套方式如下: 。 (4)屬性值必須包括在引號中,元素中的屬性名是不允許重復的。,10.1.4 XPath表示XML文檔路徑,10.2 XML文檔顯示,XML文件可用IE瀏覽器顯示,由于XML文檔僅定義數(shù)據(jù)及其數(shù)據(jù)結構,并不包含顯示格式,如不另定義顯示格式,顯示效果類似圖10.1。如希望IE按指定格式顯示這些數(shù)據(jù),必須使用CSS文件或XSL文件定義顯示格式。WPF應用程序可使用數(shù)據(jù)綁定方法顯示XML文件。,10.2.1 定義XML文檔顯示格式,【例10.2】用一個xsl文件e10_2.xsl定義e10_1.xml顯示格式。xsl文件如下: , , , ,【例10.3】html標記是用來描述網(wǎng)頁的數(shù)據(jù)和顯示格式。在xsl文件中可以使用html標記,上例中逗號和標記都是html標記,另一個xsl文件e10_3.xsl以表格的形式顯示e10_1.xml文件。e10_3.xsl文件如下: 編號 姓名 性別 年齡 ,10.2.2 XML文件轉(zhuǎn)換為HTML文件,【例10.4】本例將e10_3.xml文件,按照e10_3.xsl定義的顯示格式生成HTML文件e10_4.htm。建立新項目,在window1.xaml.cs文件頭部增加引用如下命名空間語句: using System.Xml; using System.Xml.Xsl; 增加一個按鈕,其事件函數(shù)如下。用瀏覽器IE顯示e10_4.html效果和例12.3相同。 private void button1_Click(object sender, RoutedEventArgs e) XslCompiledTransform xslt = new XslCompiledTransform(); xslt.Load(“E:應用程序設計教程(第二版)Examplech10e10_4 XML文件轉(zhuǎn)換為HTML文件e10_3.xsl“); xslt.Transform(“E:應用程序設計教程(第二版)Examplech10 e10_4XML文件轉(zhuǎn)換為HTML文件e10_3.xml“, “e10_4.html“); ,10.2.3 TreeView控件和Xml數(shù)據(jù)綁定,【例10.5】本例使用ListView控件顯示例e10_1的xml文檔。創(chuàng)建新項目。單擊“項目|添加現(xiàn)有項“菜單項,將e10_1.xml文件增加到項目中。用如下標記替換Window1.xaml文件中Grid標記。 ,【例10.6】本例在XAML標記中定義XML文檔,用ListView控件顯示這個XML文檔。 張三 李四 王五 ,【例10.7】本例使用TreeView控件顯示學生學號和姓名。在Grid標記中填入如下標記。 張三 李四 王五 XML文檔只有一個根元素,根元素中還可以嵌入子元素,子元素還可以有子元素,因此XML文檔具有層次結構,因此也可以使用TreeView控件顯示。為了顯示XML文檔,必須使用HierarchicalDataTemplate類為TreeView控件每一節(jié)點定義模板。,【例10.8】本例說明如何將TreeView控件綁定到例10.1中的XML文檔。標記如下: , 張三 李四 王五 ,10.3 查詢XML文檔,查詢XML文檔是指讀取或查找XML文檔指定數(shù)據(jù)或標記??墒褂肵mlTextReader、XmlDocument、XPathNavigator和XDocument類實現(xiàn)查詢。 10.3.1 XmlTextReader類查詢XML XmlTextReader類可以讀取XML文件,但只提供非緩存的只進、只讀訪問。這意味著使用XmlTextReader無法編輯屬性值或元素內(nèi)容,也無法插入和移除節(jié)點。,【例10.9】本例用來讀出e10_1.xml文件中每個學生的姓名、性別和年齡等數(shù)據(jù)。使用XmlTextReader類讀XML文檔各種元素只能順序讀出。在Window1.xaml.cs文件頭部增加引用命名空間語句: using System.Xml; 在Window1窗體放置ListBox控件,Name屬性為listBox1,在Window1類構造函數(shù)最后增加如下語句。 XmlTextReader dr= new XmlTextReader(“e10_1.xml“); /xml文件和可執(zhí)行文件在同一目錄 while(dr.Read() if(dr.NodeType=XmlNodeType.Text) listBox1.Items.Add(dr.Value);,XML文檔的節(jié)點分為兩大類, 第一類是文本節(jié)點,即XML文檔的數(shù)據(jù)。在兩個標記之間的文本被稱為一個文本節(jié)點。 第二類是非數(shù)據(jù)節(jié)點,它又可以分為以下幾大類: 注釋節(jié)點 聲明節(jié)點 開始標記節(jié)點 結束標記節(jié)點,【例10.10】本例用來讀出e10_1.xml文件學生標記的編號屬性。修改上例代碼如下: XmlTextReader dr= new XmlTextReader(“e10_1.xml“); while(dr.Read() if(dr.NodeType=XmlNodeType.Element) /判斷是否為開始標記 for(int i=0;idr.AttributeCount;i+) listBox1.Items.Add(dr.GetAttribute(i);,【例10.11】如果顯示e10_1.xml文檔注釋,修改上例代碼如下: XmlTextReader dr= new XmlTextReader(“e10_1.xml“); while(dr.Read() if(dr.NodeType=XmlNodeType.Comment) /e10_1.xml文檔無注釋 listBox1.Items.Add(dr.Value);,【例10.12】如果顯示e10_1.xml文檔聲明,修改上例代碼如下: XmlTextReader dr= new XmlTextReader(“e10_1.xml“); while(dr.Read() if(dr.NodeType=XmlNodeType.XmlDeclaration) listBox1.Items.Add(dr.Name+“ “+dr.Value);,10.3.2 XmlDocument類查詢XML,XmlDocument是文檔對象模型(DOM)類,是XML文檔在內(nèi)存中表示形式。DOM使程序員能夠以編程方式讀取、操作和修改XML文檔。DOM的節(jié)點的概念和上節(jié)敘述的概念完全相同,因此也可以使用類似XmlTextReader類的方法讀出XML文檔的數(shù)據(jù)和非數(shù)據(jù)節(jié)點。下邊僅給出讀出XML文檔的數(shù)據(jù)的例子,讀XML文檔中的非數(shù)據(jù)節(jié)點請讀者完成。,【例10.13】使用XML文檔對象模型(DOM) 讀出e10_1.xml文件中每個學生的姓名、性別和年齡等數(shù)據(jù)。修改例10.9代碼如下: XmlDocument doc = new XmlDocument(); /創(chuàng)建XmlDocument類的實例 doc.Load(“e10_1.xml“); /xml文件和可執(zhí)行文件在同一目錄。讀XML文件到內(nèi)存,形成DOM結構 XmlNodeReader dr=new XmlNodeReader(doc); while(dr.Read() if(dr.NodeType=XmlNodeType.Text) listBox1.Items.Add(dr.Value);,【例10.14】本例顯示XML文件e10_1.xml的所有學生姓名。修改例10.9代碼如下: XmlDocument doc = new XmlDocument(); doc.Load(“e10_1.xml“); /下句得到XML文檔中“姓名“節(jié)點放到節(jié)點數(shù)組中 XmlNodeList elemList = doc.GetElementsByTagName(“姓名“); for(int i=0; i elemList.Count; i+) listBox1.Items.Add(elemListi.InnerXml); ,【例10.15】本例用XPath語言查詢實現(xiàn)例10.13相同功能,修改例10.9代碼如下: XmlDocument doc = new XmlDocument(); doc.Load(“e10_1.xml“); XmlNodeList nodes = doc.SelectNodes(“/學生列表/學生“) /所有學生元素 foreach (XmlNode node in nodes) /分別取出每個學生元素 for(int i=0;i、 /下條語句參數(shù)i=0的值是姓名的值,i=1的值是性別的值,i=2的值是年齡的值 listBox1.Items.Add(node.ChildNodesi.FirstChild.Value); ,【例10.16】本例用XPath語言查詢實現(xiàn)例10.14相同功能,修改例10.9代碼如下: XmlDocument doc = new XmlDocument(); doc.Load(“e10_1.xml“); XmlNodeList nodes = doc.SelectNodes(“/學生/姓名“); foreach (XmlNode node in nodes) listBox1.Items.Add(node.FirstChild.Value); ,【例10.17】用XPath語言查詢編號=002的學生姓名,修改例10.9代碼如下: XmlDocument doc = new XmlDocument(); doc.Load(“e10_1.xml“); /XmlNode node = doc.SelectSingleNode (“/學生contains(編號,002)“); /此句也正確 XmlNode node = doc.SelectSingleNode(“/學生編號=002“); listBox1.Items.Add(node.ChildNodes0.FirstChild.Value);,10.3.3 XPathNavigator類查詢XML,XPathNavigator類和XmlDocument類的工作方式類似,在內(nèi)存中處理XML文檔,允許移動節(jié)點,關鍵的區(qū)別是XPathNavigator采用游標方式,使用MoveToNext()之類的方法向前或向后移動節(jié)點。一般從XmlDocument類對象導出XPathNavigator類對象。,【例10.18】用XPathNavigator類讀出e10_1.xml文件中每個學生的編號、姓名、性別和年齡等數(shù)據(jù)。修改例10.9,添加引用命名空間語句:using System.Xml.XPath;增加一個方法如下: void getAllText(XPathNavigator xnav) if (xnav.NodeType = XPathNodeType.Text) listBox1.Items.Add(xnav.Value); if (xnav.HasAttributes) xnav.MoveToFirstAttribute(); do listBox1.Items.Add(xnav.Value); while (xnav.MoveToNextAttribute(); xnav.MoveToParent(); ,if (xnav.HasChildren) xnav.MoveToFirstChild(); do getAllText(xnav); while (xnav.MoveToNext(); xnav.MoveToParent(); 刪除原在Window1構造函數(shù)中代碼,增加代碼如下: XmlDocument doc = new XmlDocument(); doc.Load(“e10_1.xml“); XPathNavigator xnav = doc.CreateNavigator(); getAllText(xnav);,10.3.4 XDocument和LINQ to XML,為了實現(xiàn)LINQ to XML,.Net3.5引入了System.Xml.Linq命名空間,在該命名空間中,引入了若干類用來操作XML文檔,包括用XDocument類代表整個XML文檔,用XElement類代表XML文檔中某個元素,用XAttribute類代表XML文檔節(jié)點屬性,用XComment類代表XML文檔注釋,用XDeclaration類代表XML文檔聲明,用XName類代表XML命名空間。使用這些類,采用不同于XMLDocument類的方式,能夠更快捷方便地操作XML文檔,下邊用例子說明LINQ to XML用法。,【例10.19】本例查找e10_1.xml所有學生的姓名。修改例10.9代碼如下: XElement xDoc = XElement.Load(“e10_1.xml“); var AllName = from aName in xDoc.Descendants(“姓名“) select aName.Value; foreach (var name in AllName) listBox1.Items.Add(name.ToString(); 【例10.20】本例查找e10_1.xml編號為001的學生姓名,上例LINQ語句修改如下: var AllName = from aName in xDoc.Descendants(“學生“) where (string)aName.Attribute(“編號“) = “001“ select aName.Element(“姓名“).Value;,【例10.21】如果查找e12_18.xml所有女學生的姓名,上例LINQ語句修改如下: var AllName = from aName in xDoc.Descendants(“學生“) where (string)aName.Element(“性別“) = “女“ select aName.Element(“姓名“).Value;,10.4 編輯XML文檔,10.4.1 XmlTextWriter類寫XML文檔 XmlTextWriter類提供了快速、非緩存、只進方法生成XML文檔的方法,可以生成包含XML數(shù)據(jù)的流或文件。該類屬性Formatting為Formatting.None,表示不使用特殊的格式設置XML文檔,這是默認選項;如果為Formatting.Indented,表示使子元素根據(jù)Indentation和IndentChar設置縮進。,【例10.22】本例用XmlTextWriter類生成一個XML文檔,建立新項目,增加引用命名空間語句:using System.Xml;在窗體增加一個按鈕,按紐單擊事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) System.IO.FileStream myFileStream=new System.IO.FileStream(“e10_22.xml“, System.IO.FileMode.Create); XmlTextWriter writer=new XmlTextWriter(myFileStream, System.Text.Encoding.Unicode); writer.Formatting = Formatting.Indented; writer.WriteStartElement(“學生“); writer.WriteAttributeString(“編號“, “001“); writer.WriteElementString(“姓名“, “張三“); writer.WriteElementString(“性別“, “男“); writer.WriteElementString(“年齡“, “20“); writer.WriteEndElement(); writer.Close(); ,用程序?qū)懗龅腦ML文檔的書局格式如下: 張三 男 20 ,10.4.2 XmlDocument類編輯XML文檔,XmlDocument類使程序員能夠以編程方式創(chuàng)建、編輯和刪除XML文檔內(nèi)容。 【例10.23】用XmlDocument類創(chuàng)建一個XML文檔。修改例10.22按鈕事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XmlDocument doc = new XmlDocument(); doc.LoadXml(“ + “小布頭歷險記“ + “); doc.Save(“e10_23.xml“); ,【例10.24】為例10.23創(chuàng)建的e10_23.xml文件增加一個新節(jié)點。修改例10.22,首先將e10_23.xml文件拷貝到生成的可執(zhí)行文件所在文件夾,修改例10.22按鈕事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XmlDocument doc = new XmlDocument(); doc.Load(“e10_23.xml“); XmlNode root = doc.DocumentElement; XmlElement elem = doc.CreateElement(“價格“); elem.InnerText = “19.95“; root.AppendChild(elem); doc.Save(“e10_24.xml“); ,【例10.25】為例10.23創(chuàng)建的e10_23.xml文件增加一個新屬性。修改例10.24,首先將e10_23.xml文件拷貝到生成的可執(zhí)行文件所在文件加,修改例10.24按鈕事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XmlDocument doc = new XmlDocument(); doc.Load(“e10_23.xml“); XmlAttribute newAttr = doc.CreateAttribute(“類別“); newAttr.Value = “小說“; XmlAttributeCollection attrColl =doc.DocumentElement.Attributes; attrColl.Append(newAttr); doc.Save(“e10_25.xml“); ,【例10.26】查找e10_1.xml文檔指定節(jié)點,修改該節(jié)點數(shù)據(jù)。修改例10.24,首先將e10_1.xml文件拷貝到生成的可執(zhí)行文件所在文件加,修改例10.24按鈕事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XmlDocument doc = new XmlDocument(); doc.Load(“e10_1.xml“); XmlNode student; XmlNode root = doc.DocumentElement; student=root.SelectSingleNode(“descendant:學生姓名=張三“); student“年齡“.InnerText=“22“; doc.Save(“e10_26.xml“); ,10.4.3 XDocument編輯XML文檔,【例10.27】本例用語句生成和XML文件e10_1.xml相同的XML文件e10_27.xml。創(chuàng)建新項目,增加如下命名空間: using System.Xml; using System.Xml.Linq; 放置Button控件到窗體,其屬性Content=“用程序?qū)慩ML文件“,其事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XDocument xDoc = new XDocument( new XDeclaration(“1.0“, “GB2312“, “yes“), new XComment(“這是一個注釋“), new XElement(“學生列表“,new XElement(“學生“,new XAttribute(“編號“, “001“), new XElement(“姓名“, “張三“), new XElement(“性別“, “男“), new XElement(“年齡“, “20“), new XElement(“學生“,new XAttribute(“編號“, “002“), new XElement(“姓名“, “李四“), new XElement(“性別“, “女“), new XElement(“年齡“, “19“); xDoc.Save(“e10_27.xml“); 編譯運行后,單擊按鈕,創(chuàng)建XML文件e10_27.xml,可用IE瀏覽器查看該文件。,【例10.28】本例為XML文件e10_27.xml增加一個學生節(jié)點。修改上例,修改按紐控件標題為“增加學生節(jié)點“,其事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XElement xDoc = XElement.Load(“e10_27.xml“); /該文件必須和可執(zhí)行文件在同一文件夾 XElement xel= new XElement(“學生“,new XAttribute(“編號“, “003“), new XElement(“姓名“, “王五“), new XElement(“性別“, “女“), new XElement(“年齡“, “21“); xDoc.Add(xel); xDoc.Save(s); ,【例10.29】本例刪除編號為001的學生。修改例12.28, Button控件屬性Text=“刪除編號為003學生“,其事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XElement xDoc = XElement.Load(“e10_28.xml“); var AllName = from aName in xDoc.Descendants(“學生“) where (string)aName.Attribute(“編號“) = “003“ select aName; foreach (var name in AllName) name.RemoveAll(); xDoc.Save(“e10_29.xml“); ,【例10.30】本例修改編號為001的學生的年齡。修改上例, Button控件屬性Text=“修改學生的年齡“,其事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XElement xDoc = XElement.Load(“e10_27.xml“); var AllName = from aName in xDoc.Descendants(“學生“) where (string)aName.Attribute(“編號“) = “001“ select aName; foreach (var name in AllName) name.Element(“年齡“).Value = “18“; xDoc.Save(“e10_30.xml“); ,10.5 XML架構,XML文件可用DTD(Document Type Define,文檔類型定義)和XSD(XML Schema,XML架構)來描述其數(shù)據(jù)結構。,10.5.1 DTD或XML Schema定義XML架構,DTD(Document Type Definition 文檔類型定義)是SGML語言的組成部分,可以用來定義XML文檔的數(shù)據(jù)結構和組成的元素類型,可以看作一個或多個XML文檔的模板。使用DTD可以對一個XML文檔的結構進行校驗。它可以是一個獨立文件,也可以直接放在XML文檔中。,例如,例10.1中的XML文件e10_1.xml的DTD文件如下: ,10.5.2 用XML Schema驗證XML架構,一個XML文檔首先應當是格式良好的,為了驗證格式的正確性,可以使用XML Schema (XML架構,XSD)對一個XML文檔進行驗證 。 【例10.31】用VS2008打開e10_1.xml,選擇主菜單“XML(X)|創(chuàng)建架構(C)“菜單項, 為XML文件e10_1.xml建立架構文件e10_1.xsd。然后運行本程序進行驗證。 (1)創(chuàng)建新項目,在Window1.xaml.cs文件頭部增加如下命名空間: using System.Xml; using System.IO; using System.Xml.Schema;,(2)在窗體增加一個TextBlock和Button控件,Button控件事件函數(shù)如下: private void button1_Click(object sender, RoutedEventArgs e) XmlSchemaSet sc = new XmlSchemaSet(); sc.Add(null, “e10_1.xsd“); XmlReaderSettings settings = new XmlReaderSettings(); settings.ValidationType = ValidationType.Schema; settings.Schemas = sc; XmlReader reader = XmlReader.Create(“e10_1.xml“, settings); try while (
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 氧化石與納米親水二氧化硅在流變性和攜砂能力中的作用研究
- 安全施工方案
- 智能時代個人信息保護自律機制構建研究
- 基于PLC的機床電氣控制設計原理與應用實例
- 聽覺視角下的文學作品深度解讀
- 構建學習型社會:教育關系重構與創(chuàng)新路徑探索
- 公務接待相關管理辦法
- 安全生產(chǎn)十四五
- 新媒體環(huán)境下播音主持話語表達的創(chuàng)新范式研究
- 儲運部工作總結
- 2025至2030中國中小型風電行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 六大茶類培訓
- 2025-2030中國油田化學品行業(yè)市場深度調(diào)研及行情監(jiān)測與投資前景研究報告
- 2025年烏魯木齊危險品駕駛員模擬試題
- 2025至2030中國質(zhì)子束治療系統(tǒng)行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 自主招生面試題及答案
- 深基坑監(jiān)測管理制度
- 2025年甘肅省民航機場集團校園招聘45人筆試參考題庫帶答案詳解
- 2025年高考真題-英語(全國一卷) 含答案
- 統(tǒng)編版高中政治必修三《政治與法治》期末復習:選擇題刷題練習題(含答案解析)
評論
0/150
提交評論