Hirdetés
- Azonnali alaplapos kérdések órája
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen házat vegyek?
- Lenovo Thinkbook, Yoga széria
- Vezeték nélküli fülhallgatók
- Vezetékes FEJhallgatók
- Milyen billentyűzetet vegyek?
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Amlogic S905, S912 processzoros készülékek
- Milyen nyomtatót vegyek?
Új hozzászólás Aktív témák
-
Keem1
veterán
Srácok, bizonyára lesz olyan, aki emlékszik rá, hogy nagy xml-ekkel dolgozom.
A korábbi megoldásom az volt, hogy
XmlDocument
+XmlNode
, amíg az XML befért a memóriába. Mostanra sok lett az, ami nem fér be.
Új megoldást találtam ki: alapvetőenXmlReader
(ez a nagy XML), és amelyik node épp kell, azt beolvasom DOM-ba.using (XmlReader xmlReader = XmlReader.Create(docUrl))
{
while (xmlReader.ReadToFollowing("product"))
{
if (xmlReader.Name.Equals("product") && (xmlReader.NodeType == XmlNodeType.Element))
{
XmlDocument xmldoc = new XmlDocument();
XmlElement root = xmldoc.CreateElement("product-export");
xmldoc.AppendChild(root);
XmlNode node = xmldoc.ReadNode(xmlReader);
}
}
}Így elvileg egy node-ot tartok a ramban, mindig amivel épp dolgozom. Működne is a korábbi megoldásom az által, hogy a node nevű aktuális csomópont ugyanúgy megvan, csak eddig DOM-ból foreach-csel körbejárva, így meg mindig csak egy van beolvasva.
Igen ám, viszont előállt egy olyan gond, hogy midegyik node mellé társul egy#whitespace
elnevezésű üres cucc, amit az eddigi kód megpróbál feldolgozni.
Tehát most anode.ChildNodes.Count
= (régi)node.ChildNodes.Count *2
, mivel van egy#whitespace
nevű érvénytelen node-om is.
Ezt hogy tudnám kiszedni? És mitől keletkezett? Így kell elképzelni: [kép]
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- BESZÁMÍTÁS! ASROCK B650M R5 7600X 32GB DDR5 1TB SSD RX 6900XT OCF 16GB Zalman Z1 PLUS CM 1200W
- LENOVO Legion Pro 5 16IRX8 - 16" WQXGA 240Hz - i5-13500HX - 16GB - 1TB - RTX 4060 - 9 Hó garancia
- Macbook Pro 2019 // i7 // 16/512GB // Számla+Garancia //
- Vállalom Xianomi Okos kamerák, szoftveres javíttását
- Samsung Galaxy A36 5G / 6/128GB / Kártyafüggetlen / 12Hó Garancia / BONTATLAN
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő