Czytanie struktury XML

0

Cześć, potrzebuje zrobić program, który po wczytaniu pliku .xml do programu wypisze mi całą strukturę tego .xml powiedzmy w listview. Niezbędne jest to do dalszego działania, ponieważ mam coś takiego jak wybór typu wartości dla elementu, jeżeli to jest imię to wstawi w wartość elementu imię, jeżeli string jakiś o długości 10 to stworzy takiego stringa, jeżeli liczba to liczba. Chciałbym pobrać strukturę i pod tą strukturę wprowadzić wartości a następnie zapisać plik ze wczytaną strukturą ale nowymi wartościami. Program mi jest potrzebny do tworzenia przykładowych na wczytanej strukturze (bez potrzeby robienia struktury od początku w programie) .xml

Możecie mi powiedzieć jak łatwo odczytać nieznaną strukturę w łatwy sposób? Dzięki!

0

https://www.google.nl/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=xml+c%23+get+attributes

http://stackoverflow.com/questions/933687/read-xml-attribute-using-xmldocument

niech te xml ma jeden glowny atrybut ktory znasz a reszte mozesz wypisac ;)

ogolnie w google jest co to potrzebujesz, po prostu zadaj odpowiednio pytanie

0

Właśnie problemem jest ubrać w słowa pytanie. Mam dziwny problem bo wyskakuje mi, że błąd dokumentu

Data at the root level is invalid. Line 1, position 1.

Xml wygląda tak

         <user>
            <abb>Matylda</abb>
            <bbb>Pawłowski</bbb>
            <pcc>position</pcc>
            <ddd>G</ddd>
            <eee>login</eee>
         </user>
0

w tym miejscu występuje ten błąd

doc.LoadXml(@"C:\Users\xxx\Desktop\tester\user\a.xml");
0

Dorzuć poprawny nagłówek do tego xml'a, choćby:

<?xml version="1.0" encoding="UTF-8"?>
0

Zmieniłem z loadXml na zwykłe load i poszło, mam tylko problem z odczytaniem ilości elementów w strukturze user, robię w ten sposób

            XmlNodeList elemList = doc.GetElementsByTagName("user"); ale z tego co się orientuje to zwraca mi po prostu ilość struktur user

W jaki sposób odczytać wszystkie elementy w strukturze user?

0

Już nieważne, poszło

            XmlDocument doc = new XmlDocument();
            doc.Load(@"C:\Users\xxx\Desktop\tester\userData\a.xml");
            XmlNode xn = doc.FirstChild;

            for (int i = 0; i < xn.ChildNodes.Count; i++)
            {
                string attrVal = xn.ChildNodes[i].Name;
                MessageBox.Show(attrVal);
            }

A jak odczytać poprawnie strukturę takiego pliku?

<abc>
	<bbb>
		<name>aaa</name>
		<signature>bbb</signature>
		<Date>2005-03-24</Date>
		<delivery>
			<email>xxxx</email>
			<telephone>xxxx</telephone>
			<firstName>Mxxxn</firstName>
			<lastName>aaaaa</lastName>
			<address>
				<apartment>1</apartment>
				<building>1</building>
				<city>xxxxxx</city>
				<country>Niemcy</country>
			</address>
		</delivery>
    </bbb>
</abc>

0 użytkowników online, w tym zalogowanych: 0, gości: 0