Salve a tutti, ho un documento di questo tipo:
Sto cercando un modo per fare un programmino C# con Visual Studio 2010 che mi consenta di riscriverlo identico ma senza i nodi:codice:<?xml version="1.0" encoding="UTF-8" ?> - <zucchine xmlns="ciccio"> <Id>urn:uuid:8f27991d-3adb-4a8f-9c7b-c655606bdd2e</Id> <Abaabababa>Fuffa</Abaabababa> <cacacacaca>2080-08-16T02:19:23+01:00</cacacacaca> <mustafa>pippo</mustafa> <Creator>Mamma</Creator> <alibaba>Nonno</alibaba> <pluto>Zio</pluto> - <plutino> <Id>1</Id> <LabelText>AA</LabelText> </plutino> <RatingList /> - <TopolinoList> - <Topolino> <Id>urn:uuid:da61bb01-016c-45b7-aaac-f6da986e9f0a</Id> - <Minnie> - <paperino> <Id>urn:uuid:b8776053-3cf5-47db-92bc-44b18db1cd4d</Id> <orazio>24 1</orazio> <clarabella>24958</clarabella> <peppa>192</peppa> <nonnapapera>24624</nonnapapera> <paperone>urn:uuid:3b36ccee-6b14-4f64-84a9-219c5ac6cf34</paperone> <claudio>6jLbJM6P62MO86T3qQy7iTuImPY=</claudio> <frutta>24 1</frutta> <verdura>2.39</verdura> </paperino> - <patate> <Id>urn:uuid:34c002a4-91bd-4a98-b0e4-81e6a7d5d752</Id> <orazio>24 1</orazio> <clarabella>24958</clarabella> <peppa>192</peppa> <nonnapapera>24624</nonnapapera> <paperone>urn:uuid:a8cc8278-a04b-4536-8c89-f82d7fc3fcfe</paperone> <claudio>FdiJNVTHJXTsxff7F/61OiFbCOs=</claudio> </patate> </Minnie> </Topolino> - <Topolino> <Id>urn:uuid:ee72a83f-9de8-412d-9ed4-c40f28fc1e65</Id> - <Minnie> - <paperino> <Id>urn:uuid:8c39ce5a-3516-41c9-8468-336f2263425a</Id> <orazio>24 1</orazio> <clarabella>30579</clarabella> <peppa>192</peppa> <nonnapapera>30245</nonnapapera> <paperone>urn:uuid:04fbf8a2-4848-4cf2-aa6b-493164f34323</paperone> <claudio>6SraImBYxsyTmgSrhgW6Vios5uk=</claudio> <frutta>24 1</frutta> <verdura>2.39</verdura> </paperino> - <patate> <Id>urn:uuid:9bb3290e-0526-49bc-bfc6-b9828f61c129</Id> <orazio>24 1</orazio> <clarabella>30579</clarabella> <peppa>192</peppa> <nonnapapera>30245</nonnapapera> <paperone>urn:uuid:3a108443-fa98-4d96-9325-65e71e61e5a9</paperone> <claudio>bqx6K0baRUvBUHezNRkaLQ2hc9U=</claudio> </patate> </Minnie> </Topolino> - <Topolino> <Id>urn:uuid:5d679210-1883-430d-87ea-b990cddb95fa</Id> - <Minnie> - <paperino> <Id>urn:uuid:c57a2e3b-3094-4ec5-bc51-ab34255fb59a</Id> <orazio>24 1</orazio> <clarabella>31726</clarabella> <peppa>192</peppa> <nonnapapera>31392</nonnapapera> <paperone>urn:uuid:ca303a56-e853-46b5-966a-6cfcda70d35f</paperone> <claudio>XL03UHrYQnNiiJ8DdytM+JWCSqk=</claudio> <frutta>24 1</frutta> <verdura>2.39</verdura> </paperino> - <patate> <Id>urn:uuid:f04737a9-a1ae-41cb-b9cc-d98c7a7c5dfc</Id> <orazio>24 1</orazio> <clarabella>31726</clarabella> <peppa>192</peppa> <nonnapapera>31392</nonnapapera> <paperone>urn:uuid:1634e32e-6add-4303-9655-bc11615a6032</paperone> <claudio>mSl0JIrB366sCma7Oft9dwCFqv4=</claudio> </patate> </Minnie> </Topolino> - <Topolino> <Id>urn:uuid:e1b0b76b-059d-458a-8c78-7cb53a67976c</Id> - <Minnie> - <paperino> <Id>urn:uuid:d5428a0c-d3bf-4db6-b620-d7ac861b4998</Id> <orazio>24 1</orazio> <clarabella>28741</clarabella> <peppa>192</peppa> <nonnapapera>28407</nonnapapera> <paperone>urn:uuid:3cad8310-01ce-4910-98f8-b0cad23ea621</paperone> <claudio>0ACI6cvFS6ByjRtfMeKgS0MuGj0=</claudio> <frutta>24 1</frutta> <verdura>2.39</verdura> </paperino> - <patate> <Id>urn:uuid:b70904e3-e78d-429f-bceb-b56767e168d3</Id> <orazio>24 1</orazio> <clarabella>28741</clarabella> <peppa>192</peppa> <nonnapapera>28407</nonnapapera> <paperone>urn:uuid:22f801a4-ec58-4e9a-bd87-ea14e53509b8</paperone> <claudio>S7hN3kkABeTf2eAuCG3puD+d17g=</claudio> </patate> </Minnie> </Topolino> - <Topolino> <Id>urn:uuid:9864be61-58c9-44d8-8c36-46366d11b067</Id> - <Minnie> - <paperino> <Id>urn:uuid:9f16145c-2322-466f-88ba-8f842232fe7f</Id> <orazio>24 1</orazio> <clarabella>28488</clarabella> <peppa>192</peppa> <nonnapapera>28154</nonnapapera> <paperone>urn:uuid:d098799f-c690-46c4-991d-561e4fa61747</paperone> <claudio>XwXFkt9pHOYQb5Y/k9gfZq4l5qY=</claudio> <frutta>24 1</frutta> <verdura>2.39</verdura> </paperino> - <patate> <Id>urn:uuid:5ab8a4f2-2a98-4da3-ab5a-3bd21b739356</Id> <orazio>24 1</orazio> <clarabella>28488</clarabella> <peppa>192</peppa> <nonnapapera>28154</nonnapapera> <paperone>urn:uuid:8d6dfbee-f798-495f-be42-5cb825e5692c</paperone> <claudio>1q9VI2ojAY4Efrqsg30hM42ZKzE=</claudio> </patate> </Minnie> </Topolino> - <Topolino> <Id>urn:uuid:9c7661d5-59b6-45c2-bfbe-c6717dfccb82</Id> - <Minnie> - <paperino> <Id>urn:uuid:13205cae-50eb-4878-a082-5b9a5df7af40</Id> <orazio>24 1</orazio> <clarabella>26463</clarabella> <peppa>192</peppa> <nonnapapera>25968</nonnapapera> <paperone>urn:uuid:2a1a2d88-ea12-41e2-b8a5-aff82fc2e62e</paperone> <claudio>RByY+rW7FJL3psYEp+MSawNbRyk=</claudio> <frutta>24 1</frutta> <verdura>2.39</verdura> </paperino> - <patate> <Id>urn:uuid:41f87154-fb74-494f-9070-e14bf79a774b</Id> <orazio>24 1</orazio> <clarabella>26463</clarabella> <peppa>192</peppa> <nonnapapera>25968</nonnapapera> <paperone>urn:uuid:65b276db-e2ac-432f-8df8-747cd26d8752</paperone> <claudio>CR3zt1mkesdmJtWbr8u0xPtepDg=</claudio> </patate> </Minnie> </Topolino> </TopolinoList> </zucchine> -
<paperone>urn:uuid:65b276db-e2ac-432f-8df8-747cd26d8752</paperone>
non posso ovviamente semplicemente editarlo con frontpage perchè il contenuto cambia sempre, quello che resta fisso è solo
<paperone>-----</paperone>
Ho provato a fare un prog del tipo
ma non funziona, o meglio mi leva solo una metà dei Paperone,codice:using System; using System.Xml; namespace Premove { class RemovePaperone { static void Main(string[] args) { string sorg = args[0]; XmlDocument dest = new XmlDocument(); dest.Load(sorg); XmlNodeList k = source.GetElementsByTagName("Paperone"); for (int i = 0; i < k.Count ; i++) { // Console.WriteLine(k[i].InnerXml); k[i].ParentNode.RemoveChild(k[i]); } dest.save("out.xml"); }}}
Ho provato anche con :
ma la cosa non va lo stesso, anzi dice che i nodi selezionati non sono figli di quello padre.codice:XmlNodeList k = source.GetElementsByTagName("Paperone"); XmlNodeList a = source.GetElementsByTagName("Paperino"); XmlNodeList b = source.GetElementsByTagName("Patate"); for (int i = 0; i < k.Count ; i++) { // Console.WriteLine(k[i].InnerXml); // k[i].ParentNode.RemoveChild(k[i]); int c = i+i; a[i].RemoveChild(k[c]); b[i].RemoveChild(k[c++]);
Se rimuovo il commento, Il comando commentato // Console.WriteLine(k[i].InnerXml); però fornisce i valori giusti sul terminale.
Non so davvero come fare, grazie a tutti per l'aiuto.

Rispondi quotando