在一个项目中要抓取XML文件的内容,其中XML文件的内容大致如下
<?xml version="1.0" encoding="utf-8"?> <cyber:AOI_INFO xmlns:cyber="http://www.cyberoptics.com/AOI/measure"> <UserName>SQSNS5017\CyberOptics</UserName> <SystemId>SQSNS5017</SystemId> <AOIVersion>4.11.1.37</AOIVersion> <InspectionType>Review</InspectionType> <PositionUnit>Millimeter</PositionUnit> <RotationUnit>Degree</RotationUnit> <XYOffsetReference>FeatureOrientation</XYOffsetReference> <Panel Id="513" Name="Panel" PanelStatus="Failed" Category="" StartTime="11/22/2020 18:03:48" EndTime="11/22/2020 18:04:33" LotCode="NewLot" LotSize="0" Barcode="#GEB(H)-1122A" NG_Stacker_SlotNumber="" SequenceNumber="" NumberOfBoardsInPanel="1"> <RecipeName>8.9AM_IC_LED_OP20_R1</RecipeName> <RecipeLastUpdateTime></RecipeLastUpdateTime> <CAD></CAD> <PanelResult> <Attributes> <DefectiveComponents Value="634" /> <DefectiveFeatures Value="634" /> <FalseFailComponents Value="0" /> <FalseFailFeatures Value="0" /> </Attributes> </PanelResult> 。。。。。。。
在C#中抓取XML文件
string path1 = path + @"\" + fileName; XmlDocument doc = new XmlDocument(); XmlReaderSettings settings = new XmlReaderSettings(); settings.IgnoreComments = true;//忽略文档里面的注释 XmlReader reader = XmlReader.Create(path1, settings); doc.Load(reader); XmlNamespaceManager nsp = new XmlNamespaceManager(doc.NameTable); //导入命名 nsp.AddNamespace("cyber", "http://www.cyberoptics.com/AOI/measure"); XmlNode xn = doc.SelectSingleNode("cyber:AOI_INFO/Panel", nsp); //SPIXMLReader bookModel = new SPIXMLReader(); XmlNodeList xnl = xn.ChildNodes; string id = xn.Attributes.GetNamedItem("Id").InnerText; string barcode = xn.Attributes.GetNamedItem("Barcode").InnerText; string starttime = xn.Attributes.GetNamedItem("StartTime").InnerText; string endtime = xn.Attributes.GetNamedItem("EndTime").InnerText; string recipename = xnl[0].InnerText; string panelstatus = xn.Attributes.GetNamedItem("PanelStatus").InnerText; reader.Close();
详细内容请看:https://www.cnblogs.com/enjoyprogram/p/3190789.html
原文:https://www.cnblogs.com/wanshiliang/p/14071175.html