Si të hapni një dokument XML - veçoritë e punës me skedarët XML. Puna me XML në aplikacionet .NET Çfarë është XML

Shtëpi / Windows 7

Ju ndoshta keni dëgjuar për XML dhe dini shumë arsye pse duhet të përdoret në organizatën tuaj. Por çfarë është saktësisht XML? Ky artikull shpjegon se çfarë është XML dhe si funksionon.

Në këtë artikull

Shënimet, shënimet dhe etiketat

Për të kuptuar XML, është e dobishme të mbani mend se si mund të etiketoni të dhënat. Dokumentet u krijuan nga njerëzit gjatë shumë shekujve, dhe gjatë asaj kohe njerëzit bënin shënime mbi to. Për shembull, mësuesit shpesh bëjnë shënime për punën e nxënësve duke treguar nevojën për të lëvizur paragrafët, për të bërë një fjali më të qartë ose për të korrigjuar. gabime drejtshkrimore etj. Duke shënuar një dokument, mund të përcaktoni strukturën, kuptimin dhe pamjen informacion. Nëse keni përdorur ndonjëherë korrigjime të shpejta në Microsoft Office Word, atëherë jeni njohur me formularin e kompjuterizuar të shënimit.

në botë teknologjia e informacionit termi "shënjim" është bërë termi "shënim". Markup përdor kode të quajtura etiketa (ose ndonjëherë shenja) për të përcaktuar strukturën, pamjen vizuale dhe - në rastin e XML - kuptimin e të dhënave.

Teksti i këtij artikulli në Formati HTMLështë shembull i mirë aplikimi i shënjimit kompjuterik. Nëse në Microsoft Internet Explorer klikoni këtë faqe klikoni me të djathtën miun dhe zgjidhni komandën Shikoni kodin HTML, do të shihni tekst të lexueshëm dhe etiketa HTML si

DHE

. Në dokumentet HTML dhe XML, etiketat janë të lehta për t'u njohur sepse ato janë të mbyllura në kllapa këndore. Në tekstin burimor të këtij artikulli, etiketat HTML kryejnë shumë funksione, të tilla si përcaktimi i fillimit dhe fundit të çdo paragrafi (

...

) dhe vendndodhjen e vizatimeve.

Karakteristikat e XML

Dokumentet HTML dhe XML përmbajnë të dhëna të mbyllura në etiketa, por këtu përfundojnë ngjashmëritë midis dy gjuhëve. Në format Etiketat HTML përcaktoni dizajnin e të dhënave - vendndodhjen e titujve, fillimin e një paragrafi, etj. Në formatin XML, etiketat përcaktojnë strukturën dhe kuptimin e të dhënave - çfarë është.

Duke përshkruar strukturën dhe kuptimin e të dhënave, bëhet i mundur ripërdorimi i tyre në disa mënyra. Për shembull, nëse keni një bllok të dhënash shitjesh në të cilin secili element është i përcaktuar qartë, mund të ngarkoni vetëm elementët e nevojshëm në raportin e shitjeve dhe të transferoni të dhënat e tjera në bazën e të dhënave të kontabilitetit. Me fjalë të tjera, ju mund të përdorni një sistem për të gjeneruar dhe etiketuar të dhënat në formatin XML, dhe më pas t'i përpunoni ato të dhëna në çdo sistem tjetër, pavarësisht nga platforma e klientit ose sistemi operativ. Kjo përputhshmëri e bën XML bazën e një prej teknologjive më të njohura të shkëmbimit të të dhënave.

Ju lutemi vini re sa vijon kur punoni:

    HTML nuk mund të përdoret në vend të XML. Megjithatë, të dhënat XML mund të mbyllen në etiketat HTML dhe të shfaqen në faqet e internetit.

    Aftësitë HTML janë të kufizuara në një grup të paracaktuar etiketash që janë të përbashkëta për të gjithë përdoruesit.

    Rregullat XML ju lejojnë të krijoni çdo etiketë të nevojshme për të përshkruar të dhënat dhe strukturën e tyre. Le të themi se duhet të ruani dhe të ndani informacione rreth kafshëve shtëpiake. Për ta bërë këtë, mund të krijoni kodin e mëposhtëm XML:

    Izzy siamez 6 po nr Izz138bod Colin Wilcox

Siç mund ta shihni, etiketat XML e bëjnë të qartë se cilat të dhëna po shikoni. Për shembull, është e qartë se të dhënat kanë të bëjnë me një mace dhe mund të përcaktoni lehtësisht emrin, moshën, etj. Për shkak se mund të krijoni etiketa që përcaktojnë pothuajse çdo strukturë të dhënash, XML është i zgjerueshëm.

Por mos i ngatërroni etiketat në këtë shembull me etiketat në skedarin HTML. Për shembull, nëse teksti i mësipërm XML ngjitet në një skedar HTML dhe hapet në një shfletues, rezultatet do të duken kështu:

Izzy siamez 6 po jo Izz138bod Colin Wilcox

Shfletuesi i internetit do të injorojë etiketat XML dhe do të shfaqë vetëm të dhënat.

Të dhëna të formuara mirë

Ju ndoshta keni dëgjuar dikë në IT të flasë për një skedar XML të "formuar mirë". Një skedar XML i formuar mirë duhet të ndjekë rregulla shumë strikte. Nëse nuk ndjek këto rregulla, XML nuk funksionon. Për shembull, në shembullin e mëparshëm, çdo etiketë hapëse ka një etiketë mbyllëse përkatëse, kështu që ky shembull ndjek një nga rregullat e një skedari XML të formuar mirë. Nëse hiqni një etiketë nga një skedar dhe përpiqeni ta hapni atë në një nga programet e Office, do të shfaqet një mesazh gabimi dhe do të jetë e pamundur të përdoret një skedar i tillë.

Ju nuk keni nevojë të dini rregullat për krijimin e një skedari XML të formuar mirë (edhe pse nuk janë të vështira për t'u kuptuar), por mbani mend se vetëm të dhënat XML të formuara mirë mund të përdoren në aplikacione dhe sisteme të tjera. Nëse skedari XML nuk hapet, ndoshta është i keqformuar.

XML është i pavarur nga platforma, që do të thotë se çdo program i krijuar për të përdorur XML mund të lexojë dhe përpunojë të dhëna XML, pavarësisht nga hardueri ose sistemi operativ. Për shembull, nëse aplikoni etiketat e duhura XML, mund të përdorni një program desktop për të hapur dhe përpunuar të dhënat e marra nga mainframe. Dhe, pavarësisht se kush i krijoi të dhënat XML, të dhënat mund të manipulohen në një sërë aplikacionesh të Office. Për shkak të përputhshmërisë së tij, XML është bërë një nga teknologjitë më të njohura për shkëmbimin e të dhënave midis bazave të të dhënave dhe kompjuterëve të përdoruesve.

Përveç të dhënave të etiketuara të formuara mirë, sistemet XML zakonisht përdorin dy komponentë shtesë: skemat dhe transformimet. Seksionet e mëposhtme përshkruajnë se si funksionojnë.

Skemat

Mos u frikësoni nga termi "skemë". Një skemë është thjesht një skedar XML që përmban rregulla për përmbajtjen e skedarit të të dhënave XML. Skedarët e skemës zakonisht kanë shtesën XSD, ndërsa skedarët e të dhënave XML përdorin shtesën XML.

Skemat lejojnë programet të vërtetojnë të dhënat. Ato formojnë strukturën e të dhënave dhe sigurojnë kuptueshmërinë e tyre për krijuesin dhe njerëzit e tjerë. Për shembull, nëse përdoruesi fut të dhëna të pavlefshme, si p.sh. tekst në fushën e datës, programi mund t'i kërkojë përdoruesit ta korrigjojë atë. Nëse të dhënat në një skedar XML përputhen me rregullat në skemë, mund të përdorni çdo program të aktivizuar me XML për ta lexuar, interpretuar dhe përpunuar atë. Për shembull, siç tregohet në imazhin më poshtë, Excel mund të vërtetojë të dhënat për respektimin e skemës CAT.

Qarqet mund të jenë komplekse dhe ky artikull nuk mund të shpjegojë se si t'i krijoni ato. (Gjithashtu, ka të ngjarë që në organizatën tuaj ka njerëz të IT-së që dinë ta bëjnë këtë.) Megjithatë, është e dobishme të dini se si duken diagramet. Diagrami i mëposhtëm përcakton rregullat për një grup etiketash ... :

Mos u shqetësoni nëse shembulli nuk është i qartë. Vetëm kushtojini vëmendje sa vijon:

    Elementet e vargut në skemën e shembullit quhen deklarata. Nëse kërkohej informacion shtesë për kafshën, si ngjyra e saj ose karakteristikat e veçanta, departamenti i IT-së do të shtonte deklaratat e duhura në diagram. Sistemi XML mund të modifikohet me zhvillimin e nevojave të biznesit.

    Deklaratat janë një mjet i fuqishëm për të manipuluar strukturën e të dhënave. Për shembull, një reklamë do të thotë se etiketat si p.sh Dhe , duhet të ndjekin rendin e mësipërm. Reklamat gjithashtu mund të vërtetojnë llojet e hyrjes së përdoruesit. Për shembull, qarku i mësipërm kërkon një hyrje pozitive të numrit të plotë për moshën e maceve dhe vlerat Boolean (TRUE ose FALSE) për etiketat ALTERED dhe DECLAWED.

    Nëse të dhënat në një skedar XML ndjekin rregullat e skemës, atëherë të dhënat thuhet se janë të vlefshme. Procesi i verifikimit që një skedar i të dhënave XML përputhet me rregullat e skemës quhet (logjikisht mjaftueshëm) vërtetim. Avantazhi i madh i përdorimit të skemave është se ato mund të parandalojnë korrupsionin e të dhënave. Skemat gjithashtu e bëjnë më të lehtë gjetjen e të dhënave të dëmtuara sepse përpunimi i skedarëve XML ndalon kur shfaqet një problem.

Transformimet

Siç u diskutua më lart, XML gjithashtu lejon përdorimin dhe ripërdorimin efikas të të dhënave. Mekanizmi për ripërdorimin e të dhënave quhet një transformim XSLT (ose thjesht transformim).

Ju (ose departamenti juaj i TI-së) mund të përdorni gjithashtu transformime për të shkëmbyer të dhëna midis sistemeve të fundit, të tilla si bazat e të dhënave. Le të supozojmë se baza e të dhënave A ruan të dhënat e shitjeve në një tabelë që është e dobishme për departamentin e shitjeve. Baza e të dhënave B ruan të dhënat e të ardhurave dhe shpenzimeve në një tabelë të krijuar posaçërisht për kontabilitet. Baza e të dhënave B mund të përdorë një transformim për të marrë të dhëna nga baza A dhe për t'i vendosur ato në tabelat e duhura.

Kombinimi i skedarit të të dhënave, skemës dhe transformimit formon sistemin bazë XML. Figura e mëposhtme tregon funksionimin e sistemeve të tilla. Skedari i të dhënave kontrollohet sipas rregullave të skemës dhe më pas kalohet në çdo mënyrë të përshtatshme për transformim. Në këtë rast, transformimi vendos të dhënat në një tabelë në një faqe interneti.

Shembulli i mëposhtëm tregon një transformim që ngarkon të dhënat në një tabelë në një faqe interneti. Qëllimi i shembullit nuk është të shpjegojë se si të krijohen transformime, por të tregojë një nga format që mund të marrin.

Emri Raca Mosha I ndryshuar I zhveshur Licenca Pronari

Ky shembull tregon se si mund të duket teksti i një lloji të transformimit, por mbani mend se mund të kufizoheni në një përshkrim të qartë të asaj që ju nevojitet nga të dhënat dhe ai përshkrim mund të bëhet në gjuhën tuaj amtare. Për shembull, mund të shkoni te departamenti i IT dhe të thoni se ata duhet të printojnë të dhënat e shitjeve për rajone specifike për dy vitet e fundit dhe se informacioni duhet të duket kështu dhe ashtu. Departamenti mund të shkruajë (ose modifikojë) një transformim për të përmbushur kërkesën tuaj.

Microsoft dhe një numër në rritje i kompanive të tjera po krijojnë transformime për qëllime të ndryshme, duke e bërë XML edhe më të përshtatshëm për t'u përdorur. Në të ardhmen, ka të ngjarë të jetë e mundur të shkarkoni një konvertim që i përshtatet nevojave tuaja me pak ose aspak personalizim shtesë. Kjo do të thotë që me kalimin e kohës, përdorimi i XML do të bëhet gjithnjë e më pak i kushtueshëm.

XML në sistemin Microsoft Office

Botimet profesionale të Office ofrojnë mbështetje të zgjeruar për XML. Duke filluar me Sistemin Microsoft Office 2007, Microsoft Office përdor formatet e skedarëve të bazuar në XML si DOCX, XLSX dhe PPTX. Për shkak se XML ruan të dhënat në një format teksti dhe jo në një format binar të pronarit, klientët mund të përcaktojnë skemat e tyre dhe t'i përdorin të dhënat tuaja në mënyra të ndryshme pa pasur nevojë të paguajnë honorare. Për më shumë informacion rreth formateve të reja, shihni Hapni Formatet XML dhe Zgjerimet e Emrit të Skedarit. Më poshtë janë përfitimet e tjera.

E gjithë kjo është e mrekullueshme, por çka nëse keni të dhëna XML pa një skemë? Varet nga çfarë Programi i zyrës ju përdorni. Për shembull, kur hapni një skedar XML pa një skemë në Excel, supozohet se skema ekziston dhe ju lejon të ngarkoni të dhënat në një tabelë XML. Ju mund të përdorni listat dhe tabelat XML për të renditur, filtruar dhe llogaritur të dhënat.

Aktivizo veçoritë XML në Office

Si parazgjedhje, skeda Zhvilluesi nuk është i dukshëm. Duhet të shtohet në shirit për të përdorur komandat XML në Office.

Artikulli i mëparshëm përshkroi koncepte të përgjithshme në lidhje me XML. Në këtë artikull do të mësojmë se si të kryejmë veprimet bazë që lidhen me ndryshimin, shtimin, kërkimin në një skedar XML.

Skedari XML që përdoret për shembull.

Mazda 2007 BMW 2009

xml dom

për momentin, skedari ynë përmban strukturën e mëposhtme:

Marrëdhënia ndërmjet nyjeve në XML DOM, pikat kryesore:

1. Çdo nyje në pemën DOM ka një ParentNode prind. Në shembullin tonë, garazhi është prindi i të dy elementëve të makinës, dhe të dy elementët e makinës janë, nga ana tjetër, prindër të elementeve të modelit dhe vitit.

Si të merrni elementin prind të xml të makinës?

Console.WriteLine(elmRoot["makinë"].ParentNode.Name); //Rezultati: garazh

2. Një prind mund të ketë fëmijë ChildNodes. Për shembull, për nyjen e garazhit fëmijët janë të dy elementë të makinës. Elementet e makinës kanë edhe modelin dhe vitin e fëmijëve.

ChildNodes, është një koleksion që ruan të gjithë elementët xml për të hyrë në elementin e dëshiruar, duhet të specifikoni indeksin e tij. (Indeksi fillon gjithmonë nga zero!)

Për shembull: si të merrni elementin e fëmijës së parë?

ElmRoot.ChildNodes;

3. Ashtu si në jetën e zakonshme, një fëmijë mund të lindë fëmija i parë, ose fëmija i fundit.

Nëse marrim si shembull elementin e makinës, atëherë

FirstChild është model LastChild është viti

4. Nga ana tjetër, ka edhe lidhje midis elementeve fëmijë, ata mund të jenë vëllezër ose motra, nëse bëjmë paralele me jetën reale.

Një fëmijë mund të ketë, për shembull, një vëlla të mëparshëm dhe një vëlla të ardhshëm

Console.WriteLine(elmRoot.ChildNodes.FirstChild.NextSibling.Name); //Rezultati: viti Console.WriteLine(elmRoot.ChildNodes.LastChild.PreviousSibling.Name); //Rezultati: model

Nëse elementi nuk gjendet, atëherë hidhet një përjashtim: NullReferenceException, kështu që kur punoni me xml, përdorni gjithmonë blloqe try catch.

Console.WriteLine(elmRoot.ChildNodes. LastChild.NextSibling.Name); Console.WriteLine(elmRoot.ChildNodes. FirstChild.PreviousSibling.Name);

LastChild është vëllai tjetër;
Fëmija i parë është motra ose vëlla i mëparshëm;

Duke përdorur metodat e përshkruara më sipër, mund të lëvizni lehtësisht në nyjen e dëshiruar dhe të merrni çdo vlerë që ju nevojitet.

Si të merrni vlerën e një elementi xml?

Vlera xml e një elementi mund të merret duke përdorur veçorinë InnerText, për shembull:

Console.WriteLine(elmRoot["makinë"].FirstChild.InnerText); //Rezultati: Mazda

Një mënyrë tjetër për të marrë të njëjtën vlerë të elementit xml:

Console.WriteLine(elmRoot.FirstChild.FirstChild.InnerText); //Rezultati: Mazda

Sekuenca e lëvizjeve përgjatë pemës DOM:

Garazh -> makinë -> model -> Mazda

Ne marrim vitin:

ElmRoot["makina"].LastChild.InnerText; //Rezultati: 2007

Pasoja:

Garazh -> makinë -> viti -> 2007

Një shembull tjetër: 3 mënyra për të marrë të njëjtin rezultat.

Console.WriteLine(elmRoot.LastChild.FirstChild.InnerText); Console.WriteLine(elmRoot["makinë"].NextSibling.FirstChild.InnerText); Console.WriteLine(elmRoot.ChildNodes.Item(1).FirstChild.InnerText); //Rezultati: BMW

Nëse duhet të merrni vitin për një element me vlerën Mazda:

Console.WriteLine(elmRoot.FirstChild.LastChild.InnerText); //Rezultati: 2007

Për BMW (dy mënyra, merrni të njëjtin rezultat)

Console.WriteLine(elmRoot.ChildNodes.Item(1).ChildNodes.Item(1).InnerText); Console.WriteLine(elmRoot.ChildNodes.ChildNodes.InnerText); //Rezultati: 2009

Si të ndryshoni vlerat e elementeve xml?

Përdorimi i pronës InnerText () Mund të merrni dhe të ndryshoni vlerën e një elementi xml, për shembull, të ndryshoni vitin.

//Vendos një vlerë të re elmRoot.FirstChild.LastChild.InnerText = "2010"; //Shfaq vlerën e re në ekranin e konsolës Console.WriteLine(elmRoot.FirstChild.ChildNodes.Item(1).InnerText); //Rezultati: 2010

Në të njëjtën kohë, duhet të mbani mend se të gjitha ndryshimet ndodhin me skedarin virtual xml, nëse hapni skedarin fizik, do të shihni që viti 2007 tregohet ende në të.

Në mënyrë që ndryshimet të hyjnë në fuqi, duhet të përdorni metodën Save, për shembull:

ElmRoot.Save ("emri i skedarit xml ose transmetimi");

Tani informacioni do të ndryshohet në skedarin xml "fizik".

Si të merrni numrin e elementeve fëmijë?

Console.WriteLine(elmRoot.FirstChild.ChildNodes.Count);

garazh -> makina permban 2 femije: model dhe vit

Console.WriteLine(elmRoot.FirstChild.FirstChild.ChildNodes.Count);

garazh -> makinë -> modeli përmban 1 element xml fëmijë.

Qasja në elementet e fëmijëve

sipas indeksit

ElmRoot.ChildNodes.Emri; elmRoot.ChildNodes.Emri; //Rezultati: makinë

Duke përdorur një lak

Foreach (XmlNode nod në elmRoot.ChildNodes) ( Console.WriteLine(nod.Name); ) //Rezultati: makinë, makinë

Si të merrni emrin e elementit xml?

elmRoot.Emri; //Rezultati: garazh

Krijimi i një elementi të ri XML

Le të krijojmë një element të ri në dokumentin tonë XML në mënyrë që të ndryshojë nga dy të tjerët (makina), le ta quajmë autobus.

Kur krijojmë një element të ri, ne do të përdorim rekomandimin nga faqja e internetit msdn dhe në vend të standardit të ri XmlElement do të përdorim metodën CreateElement.

XmlElement elm = xmlDoc.CreateElement("bus");

Krijimi dhe shtimi i një elementi të ri xml

Le të krijojmë një element të ri xml me emrin "BUS".

XmlElement elmRoot = xmlDoc.DocumentElement; Console.WriteLine(elmRoot.ChildNodes.Count); //makinë, makinë XmlElement elmNew = xmlDoc.CreateElement("bus"); elmRoot.AppendChild(elmNew); Console.WriteLine(elmRoot.ChildNodes.Count); //3 makinë, makinë, autobus xmlDoc.Save("emri i skedarit xml");

Shpjegim:

1. Fillimisht marrim një element rrënjë të cilit do t'i bashkëngjisim elementë të rinj.

2. Si kontroll, do të shfaqim numrin aktual të elementeve fëmijë të elementit të garazhit: 2 (makinë dhe makinë)

3. Krijoni një element të ri BUS

4. Duke përdorur metodën AppendChild duke shtuar një element të ri në pemë

5. Le të përdorim përsëri kontrollin dhe të shfaqim numrin aktual të elementeve për elementin e garazhit, tani janë 3 prej tyre: makinë, makinë, autobus.

6. Që ndryshimet të ndikojnë në skedarin fizik, ruajeni

Në vetë skedarin XML, elementi i ri do të duket kështu:

Si të shtoni një element të ri xml?

Detyrë: krijoni një element të ri XML dhe shtoni disa përmbajtje teksti në të, për shembull vitin e prodhimit.

String strEmri i skedarit = @"C:\lessons\Auto.xml"; XmlDocument xmlDoc = i ri XmlDocument(); xmlDoc.Load(strEmri i skedarit); XmlElement elmRoot = xmlDoc.DocumentElement; XmlElement elmNew = xmlDoc.CreateElement("bus"); XmlText new_txt = xmlDoc.CreateTextNode("2006"); elmRoot.AppendChild(elmNew); elmRoot.LastChild.AppendChild(new_txt); Console.WriteLine(elmRoot.ChildNodes.Name); //bus Console.WriteLine(elmRoot.ChildNodes.LastChild.InnerText); //2006 Console.Read();

Në skedarin XML:

2006

Për qartësi

Tani le të krijojmë një nyje "autobusi" me të njëjtën arkitekturë si makina, domethënë, të shtojmë nyjet: modelin, vitin dhe disa përmbajtje teksti.

Krijimi i një elementi XML me fëmijët

string strEmri i skedarit = @"C:\lessons\Auto.xml"; //krijo një të re dokument xml në memorie XmlDocument xmlDoc = new XmlDocument(); //ngarkoni skedarin xml në memorie xmlDoc.Load(strFilename); //Merrni elementin rrënjë XmlElement elmRoot = xmlDoc.DocumentElement; //Krijo 3 elemente: autobus, model, vit XmlElement elmBUS = xmlDoc.CreateElement("bus"); XmlElement elmModel = xmlDoc.CreateElement("model"); XmlElement elmYear = xmlDoc.CreateElement("viti"); //Vendosni vlerat për elementet: modeli, viti XmlText year_txt = xmlDoc.CreateTextNode("2006"); //XmlText mod_txt = xmlDoc.CreateTextNode("liaz"); shtoni ndryshe //Shtoni dy elemente fëmijë në elementin bus: modeli dhe viti elmBUS.AppendChild(elmModel); elmBUS.AppendChild(elmYear); //Shto vlera në modelin dhe nyjet e vitit elmModel.InnerText = "liaz"; elmYear.AppendChild(vit_txt); //Shto një autobus të ri të elementit xml në pemën elmRoot.AppendChild(elmBUS); //Kontrollo nëse gjithçka është shtuar ashtu siç duhet Console.WriteLine(elmRoot.ChildNodes.FirstChild.InnerText); Console.WriteLine(elmRoot.LastChild.LastChild.InnerText); //Nëse gjithçka është në rregull, atëherë përdorni metodën Save xmlDoc.Save("emri i skedarit xml");

Rezultati:

liaz 2006

Si mund ta shkurtoj këtë kod? Për shembull, si më poshtë:

String PathXmlFile = @"C:\lessons\Auto.xml"; XmlDocument xmlDoc = i ri XmlDocument(); xmlDoc.Load(PathXmlFile); XmlElement elmRoot = xmlDoc.DocumentElement; XmlElement elmBUS = xmlDoc.CreateElement("bus"); XmlElement elmModel = xmlDoc.CreateElement("model"); XmlElement elmYear = xmlDoc.CreateElement("viti"); //Shto vlera në modelin dhe nyjet e vitit elmModel.InnerText = "liaz"; elmYear.InnerText = "2006"; elmBUS.AppendChild(elmModel); elmBUS.AppendChild(elmYear); elmRoot.AppendChild(elmBUS); //Nëse gjithçka është e saktë, atëherë thirrni metodën Save xmlDoc.Save("emri i skedarit xml");

Le ta shkurtojmë kodin pak më shumë, për ta bërë këtë do të përdorim veçorinë InnerXml:

XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(PathXmlFile); XmlElement elmXML = xmlDoc.CreateElement("bus"); string txt = " liaz" + "2006"; //InnerXml! elmXML.InnerXml = txt; //xmlDoc.DocumentElement (do të jetë e barabartë me garazhin) - kjo është një mënyrë tjetër për të hyrë në elementin rrënjë, njësoj si XmlElement elmRoot = xmlDoc.DocumentElement; xmlDoc.DocumentElement.AppendChild (elmXML) xmlDoc.Save(PathXmlFile);

Rezultati

Merrni një listë të elementeve duke përdorur GetElementByTagName

GetElementByTagName kthehet XmlNodeList, i cili përmban të gjithë elementët pasardhës që i përkasin elementit të specifikuar, për shembull, duhet të marrim të gjitha modelet e makinave që ruhen në garazh:

XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(strEmri i skedarit); Emri i modelit XmlNodeList = xmlDoc.GetElementsByTagName("model"); foreach (nyja XmlNode në modelinName) ( Console.WriteLine(node.InnerText); ) //Rezultati: mazda, bmw, liaz

Qasja duke përdorur indeksin:

String PathXmlFile = @"C:\lessons\Auto.xml"; XmlDocument xmlDoc = i ri XmlDocument(); xmlDoc.Load(PathXmlFile); XmlNodeList modelName = xmlDoc.GetElementsByTagName("model"); Console.WriteLine(Emri i modelit.InnerText); //Rezultati: liaz

Si mund të ndryshoj përmbajtjen e tekstit të një elementi "bus" të sapokrijuar duke përdorur metodën GetElementByTagName?

String PathXmlFile = @"C:\lessons\Auto.xml"; XmlDocument xmlDoc = i ri XmlDocument(); xmlDoc.Load(PathXmlFile); Emri i modelit XmlNodeList = xmlDoc.GetElementsByTagName("model"); Console.WriteLine(Emri i modelit.InnerText); //Marrë vlerën: liaz

Ose mund ta ndryshoni emrin liaz në Ikarus

Console.WriteLine(modelName.InnerText = "Ikarus");

Gjuha e shënjimit e zgjeruar (XML). Është vërtet e thjeshtë skedarët e tekstit, të cilat përdorin etiketa të personalizuara për të përshkruar strukturën dhe funksionet e tjera të një dokumenti.

Çfarë është XML

XMLështë një gjuhë shënjimi e krijuar nga World Wide Web Consortium (W3C) për të përcaktuar një sintaksë për kodimin e dokumenteve që mund të lexohen nga njerëzit dhe makinat. Ai e bën këtë përmes etiketave, të cilat përcaktojnë strukturën e dokumentit, si dhe mënyrën se si dokumenti duhet të ruhet dhe transportohet.

Mënyra më e lehtë për ta krahasuar atë me një gjuhë tjetër të shënjimit me të cilën mund të jeni njohur është shënimi i hipertekstit(HTML) përdoret për të koduar faqet e internetit. HTML përdor një grup të paracaktuar karakteresh shënimi (kode të shkurtra) që përshkruajnë formatin e përmbajtjes në një faqe interneti.

Sidoqoftë, ndryshimi me XML është se ai është i zgjerueshëm. XML nuk ka një gjuhë shënjimi të paracaktuar si HTML. Në vend të kësaj, XML lejon përdoruesit të krijojnë karakteret e tyre të shënjimit për të përshkruar përmbajtjen, duke krijuar një grup karakteresh të pakufizuar dhe vetëpërcaktues.

Në thelb, HTML është një gjuhë që fokusohet në paraqitjen e përmbajtjes, ndërsa XML është një gjuhë e dedikuar për përshkrimin e të dhënave që përdoret për të ruajtur të dhënat.

XML përdoret shpesh si bazë për formate të tjera dokumentesh, prej të cilave ka qindra. Këtu janë disa që mund të dëshironi të dini:

  • RSS dhe ATOM përshkruajnë se si aplikacionet duhet të trajtojnë furnizimet në ueb.
  • Microsoft .NET përdor XML për skedarët e tij të konfigurimit.
  • Microsoft Office përdor XML si bazë për strukturën e dokumentit.

Pra, nëse keni një skedar XML, nuk do t'ju tregojë domosdoshmërisht se për çfarë aplikacioni është. Sidoqoftë, nuk keni nevojë të shqetësoheni për këtë nëse nuk jeni duke zhvilluar skedarë XML.

Si të hapni një skedar XML

Ka disa mënyra për të hapur një skedar XML drejtpërdrejt. Mund t'i hapni dhe modifikoni me çdo redaktues teksti, t'i shikoni me çdo shfletues uebi ose të përdorni një faqe interneti që ju lejon t'i shikoni, modifikoni dhe madje t'i konvertoni në formate të tjera.

Përdorni një redaktues teksti kur punoni rregullisht me XML

Meqenëse skedarët XML janë thjesht skedarë teksti, ato mund të hapen në çdo redaktues teksti. Megjithatë, shumë redaktues teksti, të tillë si Notepad, thjesht nuk janë krijuar për të shfaqur skedarët XML me strukturën e tyre të saktë. Kjo mund të jetë e dobishme për t'u njohur shpejt me përmbajtjen e një skedari XML. Por, ka mjete më të përshtatshme për të punuar me ta.


Përdorimi i një shfletuesi ueb për të parë një skedar XML

Nëse nuk keni nevojë të redaktoni skedarin XML, por thjesht dëshironi të shikoni përmbajtjen, shfletuesi juaj mund ta trajtojë këtë detyrë. Për më tepër, shfletuesi juaj i internetit ka shumë të ngjarë të konfigurohet tashmë si ilaç standard duke parë skedarët XML. Pra, klikimi i dyfishtë i skedarit XML duhet ta hapë atë në shfletues.

Nëse jo, mund të klikoni me të djathtën mbi skedarin për të gjetur opsionet për ta hapur atë me çdo aplikacion tjetër. Thjesht zgjidhni shfletuesin tuaj të internetit nga lista e programeve.

Kur skedari hapet, duhet të shihni të dhëna të strukturuara mirë. Nuk është aq e bukur sa pamja e ngjyrave që merrni në Notepad++, por është shumë më e mirë se blloku i shënimeve.

Përdorimi i një redaktuesi në internet për skedarët XML

Nëse dëshironi të redaktoni një skedar të rastësishëm XML dhe nuk dëshironi të shkarkoni një redaktues të ri teksti, ose ju nevojitet konvertoni skedarin xml në një format tjetër Ka disa redaktorë të mirë XML në internet të disponueshëm falas.

TutorialsPoint.com, XMLGrid.net dhe CodeBeautify.org - Ju lejojnë të shikoni dhe modifikoni skedarët XML. Pasi të përfundojë redaktimi, mund të shkarkoni skedarin e modifikuar XML ose madje ta konvertoni atë në një format tjetër.

Për shembull, ne përdorim CodeBeautify.org. Faqja është e ndarë në tre seksione. Në të majtë është skedari XML me të cilin po punoni. Në mes do të gjeni disa funksione. Në të djathtë do të shihni rezultatet e disa prej opsioneve nga të cilat mund të zgjidhni.

Për shembull, në imazhin e mëposhtëm, skedari ynë i plotë XML është në të majtë dhe paneli i rezultateve tregon një pamje peme sepse ne klikuam butonin Tree View në mes.

Përdorni butonin Browse për të ngarkuar një skedar XML nga kompjuteri juaj ose butonin Load URL për të marrë XML nga një burim në internet

Butoni Tree View shfaq të dhënat në një strukturë peme të mirëformatuar në panelin e rezultateve, me të gjitha etiketat e theksuara në portokalli dhe atributet në të djathtë të etiketave.

Beatify shfaq të dhënat tuaja në një format të rregullt dhe të lehtë për t'u lexuar.

Butoni Minify shfaq të dhënat tuaja duke përdorur sa më pak hapësira të jetë e mundur. Ky funksion do të vendosë çdo pjesë të të dhënave në një rresht. Kjo do të jetë e dobishme kur përpiqeni të bëni një skedar më të vogël, gjë që do të kursejë pak hapësirë.

Dhe së fundi, mund të përdorni butonin XML në JSON për të transformimet XML në formatin JSON dhe një buton Export në CSV për të ruajtur të dhënat si një skedar vlerash të ndara me presje, ose një buton Shkarko për të shkarkuar çdo ndryshim që keni bërë në skedarin e ri XML.

Ka kaluar shumë kohë që kur premtova të flas për të punuar me të dhëna në formatin XML gjatë zhvillimit të aplikacioneve .NET. Premtimet duhet të mbahen. Ju lutemi vini re se ky artikull nuk u drejtohet zhvilluesve profesionistë .NET, por atyre që nuk kanë ende përvojë të konsiderueshme në krijimin e aplikacioneve .NET.


Pse duhet të punojmë me XML?

Nëse nuk e keni ende një ide shumë të mirë se çfarë është XML, atëherë ju rekomandoj të lexoni artikullin "XML është serioz dhe për një kohë të gjatë" në "KV" Nr. për 2007. Për të kursyer hapësirë ​​për gjëra më të rëndësishme, vetë formati XML nuk do të analizohet këtu.

Para se të filloni të njiheni me kodin e programit, duhet t'i përgjigjeni një pyetjeje themelore: pse të përfshini edhe mbështetjen XML në aplikacionin tuaj? Unë mendoj se shumë njerëz i kanë bërë vetes këtë pyetje në lidhje me shumë teknologji, dhe jo të gjitha janë përfshirë në aplikacione pas përgjigjes. Megjithatë, me XML situata është disi e ndryshme, dhe ka arsye reale për të përdorur këtë format në shumë situata.

Avantazhi kryesor i XML është se, duke qenë një format teksti nga natyra, ai megjithatë lejon në mënyrë të përkryer ruajtjen dhe transmetimin e çdo të dhënash. Meqenëse ky format është tekst, problemi i ndër-platformës së tij zgjidhet vetvetiu, dhe problemi i transmetimit të të dhënave XML zgjidhet po aq lehtë (siç bëhet, për shembull, në SOAP). Përveç kësaj, ju mund të ndryshoni lehtësisht formatin e transferimit ose ruajtjes së të dhënave duke shtuar atribute të reja dhe pa u shqetësuar shumë për përputhshmërinë me versionet e mëparshme të formatit, pasi aplikacionet që përdorin versionin e vjetër do të jenë në gjendje të lexojnë atë që u nevojitet pa i kushtuar vëmendje të rejave. etiketat ose atributet . Shumë aplikacione përdorin të bazuara në XML formatet e skedarëve, shumë protokolle të transferimit të të dhënave bazohen gjithashtu në XML, dhe listat e të dyjave vazhdojnë të rriten.

Sigurisht, nga ana tjetër, XML nuk është shumë ekonomike, sepse, siç vuri në dukje dikur saktë një nga vizitorët në forumin e Lajmeve Kompjuterike, dokumentet XML shpesh përbëhen nga 10% të dhëna dhe 90% etiketa. Sidoqoftë, kjo varet kryesisht nga etiketat që zgjidhni. Ju mund të shkruani rr. Melnikaite, 2, a është e mundur . Edhe pse, të jem i sinqertë, më duket se me disqet aktuale dhe kanalet e trasha nuk ka kuptim të ngjeshesh veçanërisht.

Pra, në duart e duhura, XML është një gjë e fuqishme dhe e përshtatshme, dhe për shkak të përhapjes së këtij formati, nuk mund t'i shpëtosh fare. Pra, le të kalojmë në shkrim kodi i programit.

Për programim do të përdorim gjuhën kryesore të platformës .NET - C#. Në mënyrë që sa më shumë lexues të praktikojnë vetë kodin e programit të dhënë, unë do të përdor versionin e parë të C# dhe .NET Framework.


Regjistrimi i të dhënave

Së pari, le të flasim për shkrimin e të dhënave, sepse, e dini, për të lexuar diçka nga diku, fillimisht duhet të shkruani diçka diku. Dhe meqenëse ju dhe unë filluam të programojmë, nuk është e përshtatshme që ne të krijojmë manualisht të dhëna XML. Pra, le të fillojmë fillimisht me shkrimin e të dhënave në XML.

Së pari, krijoni një projekt të ri në Visual Studio, #Develop ose C# Builder dhe shtoni System.Xml në listën e hapësirave të emrave të importuara.

Një klasë e veçantë, XmlTextWriter, është përgjegjëse për shkrimin e të dhënave XML në .NET Framework, e cila ju lejon të shkruani të dhëna XML në një rrjedhë arbitrare, domethënë, ne, në përgjithësi, mund t'i përdorim ato për t'i shkruar ato në një skedar, një bazë të dhënash , dhe t'ia dërgojmë dikujt nëpërmjet internetit, por tani ne do të shkruajmë gjithçka në një skedar. stream Unë mendoj se kam dalë pak më përpara, së pari le të njihemi me kodin përgjegjës për shkrimin e të dhënave në skedarin tonë XML.

String Filename = "c:\\demo.xml"; XmlTextWriter xml = ri XmlTextWriter (Emri i skedarit, System.Text.Encoding.Unicode); xml.Formatting = Formatting.Indented; xml.WriteStartDocument(); xml.WriteStartElement("rootelement"); për (int i = 0; i< 10; i++) { xml.WriteStartElement("subelement"); xml.WriteAttributeString("attrib1", "value1"); xml.WriteAttributeString("attrib2", i.ToString()); for (int j = 0; j < 10; j++){ xml.WriteStartElement("subsubelement"); xml.WriteAttributeString("attr", j.ToString()); xml.WriteEndElement(); } xml.WriteEndElement(); } xml.WriteEndElement(); xml.WriteEndDocument(); xml.Close();

Rreshti i parë, mendoj, është mjaft i qartë - është thjesht regjistrimi i emrit të skedarit në të cilin do të ruajmë të dhënat. Tjetra, ne krijojmë një objekt të tipit XmlTextWriter (ai quhet, siç mund ta shihni, xml), dhe është me të që ne do të kryejmë të gjitha operacionet e mëtejshme. Ju lutemi vini re se kur ndërtojmë një objekt, ne specifikojmë gjithashtu kodimin në të cilin do të shkruhet XML: në shembullin tonë, ky është Unicode. Rreshti tjetër, në përgjithësi, nuk kërkohet, por do ta bëjë dokumentin tonë XML, siç thonë ata, të lexueshëm nga njeriu, domethënë do të shtojë dhëmbëzimet e nevojshme dhe do ta ndajë atë në rreshta. Pa këtë, i gjithë dokumenti do të shkruhej në një rresht, gjë që, megjithëse kursen hapësirë, e bën atë praktikisht të papërshtatshëm për redaktim manual.

Shkrimi i dokumentit fillon duke thirrur metodën WriteStartDocument() të objektit tonë xml. Rreshti pas tij shton elementin rrënjë "rootelement" në dokumentin tonë XML (më lejoni t'ju kujtoj se për dokumentet XML elementi rrënjë duhet të jetë i pranishëm në një kopje të vetme). Më pas, në një cikël, ne shtojmë dhjetë elementë të tjerë që nuk mbajnë asnjë ngarkesë semantike në dokumentin tonë XML, për secilën prej të cilave vendosim dy atribute dhe dhjetë nënelemente të tjera. Ju lutemi vini re se ne mund të shtojmë një numër në një varg pa i konvertuar në mënyrë eksplicite të dhënat, por nëse numri duhet të formojë tërësisht një varg, atëherë ai duhet të konvertohet në mënyrë eksplicite duke përdorur metodën ToString(). Gjithashtu vini re se ne duhet të mbyllim në mënyrë eksplicite secilin nga elementët e dokumentit tonë XML, dhe më pas të gjithë dokumentin.

Tani që dokumenti ynë XML është shkruar me sukses, le të shohim se si mund t'i lexojmë të dhënat prej tij.


Leximi i të dhënave

Shtoni një komponent listBox në formën e aplikacionit tuaj (përveç nëse, sigurisht, është një aplikacion konsolë) në mënyrë që të mund të monitoroni rezultatin e leximit të skedarit XML. Epo, nëse programi juaj është një program konsolë, atëherë mund ta ridrejtoni lehtësisht daljen në tastierë.

Si zakonisht, së pari le të njihemi me kodin e programit dhe më pas do të shohim se çfarë bën saktësisht ky kod.

XmlTextReader xml = i ri XmlTextReader(Emri i skedarit); xml.WhitespaceHandling = WhitespaceHandling.Asnjë; int i = 0; while (xml.Read())( if ((xml.NodeType == XmlNodeType.Element) & (xml.Name == "nënelement")) (listBox1.Items.Add("nënlement " + i + " u gjet") ; )(listBox1.Items.Add(" " + xml.GetAttribute("attr")); ) ) ) xml.Close();

Për lexim, siç mund ta keni vënë re, ne përdorim një klasë tjetër, përkatësisht XmlTextReader. Është në të njëjtën hapësirë ​​emri me klasën që kemi përdorur për të shkruar të dhënat. Në rreshtin e parë, ne krijojmë një shembull të XmlTextReader, të quajtur xml (këtu supozojmë se ndryshorja FileName ishte përcaktuar tashmë nga ne më herët për të kapërcyer rreshtat bosh nëse ato shfaqen në mënyrë të pashpjegueshme në skedarin tonë XML të sapokrijuar, ne përdorim si më poshtë). rreshti në fragmentin e dhënë të kodit Ndryshorja i përdoret për të numëruar numrin e elementeve "nën-element" që gjenden në skedarin XML nga i cili lexohen të dhënat.

Më pas vjen cikli i leximit të drejtpërdrejtë të të dhënave nga skedari. Metoda Read() lexon elementin tjetër të dokumentit XML dhe pasi e lexojmë, kontrollojmë se çfarë saktësisht lexojmë. Nëse është me të vërtetë një element "nën-element", atëherë ne shtojmë informacion për elementin e lexuar në listBox1, shtojmë një variabël që përmban numrin e elementeve të lexuara dhe më pas lexojmë atributet e elementit. Pas leximit të atributeve, ne organizojmë një cikli të veçantë për të lexuar nënelementet (vini re se nuk kemi nevojë për një XmlTextReader të veçantë për këtë) dhe atributet e këtyre nënelementeve Si më parë, ne vendosim të gjithë informacionin e lexuar në listBox1 për të kontrolluar korrektësinë duke lexuar.

Kur lexoni skedarë XML, ashtu si kur i shkruani ato, kur ndërtoni një XmlTextReader, mund të specifikoni si parametër rrjedhën nga e cila do të lexoni, dhe më pas mund të lexoni jo vetëm nga skedarët, por edhe nga burime të tjera, shembuj të të cilave kam Duhet të theksohet tashmë një veçori e dobishme e klasës XmlTextReader: kur lexohet, ai nuk ngarkon të gjithë dokumentin XML që lexohet në memorie, kështu që është i përshtatshëm për të analizuar dokumente të mëdha XML (për shembull, bazat e të dhënave XML).


Prapa skenave

Në përgjithësi, shembulli që sapo diskutuam është shumë i thjeshtë për projekte reale. Në ditët e sotme, kur lexoni dokumente XML, ato zakonisht vërtetohen duke përdorur DTD, XML Schema ose Relax NG. Vleresimi po kontrollon nëse shënimi i një dokumenti XML përputhet me disa standarde të përshkruara në skedar i jashtëm. Vleresimi është i nevojshëm në mënyrë që verifikimi i dokumentit të mos lidhet me kabllo në algoritmin e programit, por mund të ndryshohet në mënyrë arbitrare kur ndryshon formati i të dhënave pa përditësuar kodin e programit që lexon ose shkruan të dhëna. Fatkeqësisht, tani nuk do të kemi kohë për të zgjidhur vërtetimin, sepse, siç e kuptoni vetë, vëllimi i një artikulli gazete ka kufizime të caktuara.

Një tjetër pikë praktike interesante dhe e dobishme në lidhje me punën me të dhënat XML është transformimi i të dhënave XSL. Ky transformim aplikohet në të dhëna kur ato shfaqen në faqet HTML dhe, në fakt, thjesht po aplikon një shabllon specifik të faqes në internet në një skedar XML që përmban disa të dhëna. Meqenëse pjesa më e madhe e përdorimit aktual të të dhënave XML është në një mënyrë ose në një tjetër në World Wide Web, do të ishte shumë, shumë mirë të konsideroheshin transformimet XSL.

Pra, mendoj se ky artikull do të ketë një vazhdim - por, natyrisht, vetëm nëse ju vetë (d.m.th., lexuesit e Computer News) pyesni për këtë në forum ose në një letër në adresën time të emailit. Tani për tani, kjo ndoshta ka të bëjë me përdorimin e XML në aplikacionet .NET. Shpresoj që ky informacion të jetë i dobishëm për ju.

Tani do të studiojmë punën me XML.

XML është një format për shkëmbimin e të dhënave ndërmjet sajteve.

Çfarë është një API? Ky është një grup funksionesh me të cilat mund të dërgoni një kërkesë në këtë faqe dhe të merrni përgjigjen e dëshiruar.

Kjo përgjigje më së shpeshti vjen në formatin XML. Pra, le të fillojmë ta studiojmë atë.

Puna me XML në PHP

Le të themi se keni XML. Mund të jetë në një varg, ose të ruhet në një skedar, ose të shërbehet me kërkesë në një URL specifike. Lëreni XML të ruhet në një varg. Në këtë rast, ju duhet të krijoni një objekt nga ky varg duke përdorur:

SimpleXMLElement i ri $str = " 25 1000 Kolya

"; $xml = i ri SimpleXMLElement($str); Tani kemi në ndryshore$xml

ruhet një objekt me XML të analizuar. Duke hyrë në vetitë e këtij objekti, ju mund të aksesoni përmbajtjen e etiketave XML. Ne do të shohim se si saktësisht më poshtë. Nëse XML ruhet në një skedar ose dërgohet duke hyrë në një URL (që është më shpesh rasti), atëherë duhet të përdorni funksionin simplexml_load_file Tani kemi në ndryshore:

$str = " 25 1000

, e cila bën të njëjtin objekt

$xml = simplexml_load_file (rruga drejt skedarit ose URL);

Metodat e punës

Në shembujt e mëposhtëm, XML-ja jonë ruhet në një skedar ose URL.

$str = " 25 1000

Le të jepet XML e mëposhtme:

Le të marrim emrin, moshën dhe pagën e punonjësit:

$xml = simplexml_load_file (rruga drejt skedarit ose URL); echo $xml->emri; //do të shfaqë "Kolya" echo $xml->age; //do të nxjerrë 25 echo $xml->paga; //do të nxjerrë 1000

Siç mund ta shihni, objekti $xml ka veti që korrespondojnë me etiketat. Ju mund të keni vënë re se etiketa nuk figuron askund në ankesë.

$str = " 25 1000

Le të marrim emrin, moshën dhe pagën e punonjësit:

Kjo për shkak se është etiketa rrënjësore. Mund ta riemërtoni, për shembull, në

- dhe asgjë nuk do të ndryshojë:

$str = " 25 1000

Mund të ketë vetëm një etiketë rrënjë në XML, ashtu si ajo

në HTML të thjeshtë.

Le të modifikojmë pak XML-në tonë:

Në këtë rast, ne do të marrim një zinxhir kërkesash:

$xml = simplexml_load_file (rruga drejt skedarit ose URL); echo $xml->punëtor->emri; //do të shfaqë "Kolya" echo $xml->punëtor->mosha; //do të nxjerrë 25 echo $xml->punëtor->paga; //do të nxjerrë 1000

Puna me atributet

Lërini disa të dhëna të ruhen në atribute:

Numri 1

$str = " $xml = simplexml_load_file (rruga drejt skedarit ose URL); echo $xml->punëtor["emri"]; //do të shfaqë "Kolya" echo $xml->punëtor["mosha"]; //do të nxjerrë 25 echo $xml->punëtor["paga"]; //do të nxjerrë 1000 echo $xml->punëtor; //do të shfaqë "Numër 1"

Etiketa me viza

XML lejon etiketat (dhe atributet) me vizë. Në këtë rast, qasja në etiketa të tilla ndodh si kjo:

Ivanov

$str = " 25 1000 $xml = simplexml_load_file (rruga drejt skedarit ose URL); echo $xml->punëtor->(emri i parë); //do të shfaqë "Kolya" echo $xml->punëtor->(mbiemri); //do të shfaqë "Ivanov" 26 2000 Looping 27 3000

$xml = simplexml_load_file (rruga drejt skedarit ose URL); foreach ($xml si $worker) (echo $worker->name; //do të shfaqë "Kolya", "Vasya", "Petya" )

Nga objekti në grup normal

Nëse nuk jeni të kënaqur duke punuar me objektin, mund ta konvertoni atë në një grup normal PHP duke përdorur trukun e mëposhtëm:

$xml = simplexml_load_file (rruga drejt skedarit ose URL); var_dump(json_dekodi(json_enkodi ($xml), i vërtetë));

Më shumë informacion

Analizimi i bazuar në sitemap.xml

Shpesh një sajt ka një skedar sitemap.xml.

Ky skedar ruan lidhje me të gjitha faqet e faqes për lehtësinë e indeksimit nga motorët e kërkimit (indeksimi është në thelb analizimi i faqes nga Yandex dhe Google).

Në përgjithësi, nuk duhet të shqetësohemi shumë përse nevojitet ky skedar, gjëja kryesore është që nëse ekziston, nuk duhet të zvarriteni nëpër faqet e faqes duke përdorur ndonjë metodë të ndërlikuar, por thjesht përdorni këtë skedar.

Si të kontrolloni praninë e këtij skedari: le të analizojmë faqen site.ru, pastaj shkoni te site.ru/sitemap.xml në shfletues - nëse shihni diçka, atëherë ajo është atje, dhe nëse nuk e shihni atë, pastaj mjerisht.

Nëse ka një hartë faqeje, atëherë ajo përmban lidhje me të gjitha faqet e faqes në formatin XML. Merrni me qetësi këtë XML, analizoni atë, ndani lidhjet me faqet që ju nevojiten në çdo mënyrë të përshtatshme për ju (për shembull, duke analizuar URL-në, e cila u përshkrua në metodën merimangë).

Si rezultat, ju merrni një listë të lidhjeve për analizë, gjithçka që duhet të bëni është të shkoni tek ata dhe të analizoni përmbajtjen që ju nevojitet.

Lexoni më shumë rreth pajisjes sitemap.xml në Wikipedia.

Çfarë duhet të bëni më pas:

Filloni të zgjidhni problemet duke përdorur lidhjen e mëposhtme: probleme për mësimin.

© 2024 ermake.ru -- Rreth riparimit të PC - Portali informacioni