XML - odczyt z pliku

0

Mam małą bazę danych, postanowiłem ją przechowywać w plikach XML.
O ile zapis do XML przebiegł bez większych problemów (użyłem XmlTextWriter), to z odczytem nie moge sobie poradzić (być może przemęczony jestem ;) ).

Po pierwsze nie wiem z czego mam kokoRZystaćystać XmlTextReader, czy XmlDocument, czy może z jeszcze czegoś innego.

W każdym bądzie razie potrzebuje, żebym mógł odczytać np. takiego XMLa:

<MainElement>
   <Element Atrybut1="Value1" Atrybut2="Value2">
      <Element Atrybut1="Value1" Atrybut2="Value2" />
      <Element Atrybut1="Value1" Atrybut2="Value2" />
   </ Element>
   <Element2 Atrybut1="Value1" Atrybut2="Value2" />
</ MainElement>

Chodzi o to, żebym mógł odczytać każdy Atrybut oraz wiedzieć czy dany Element jest pod-elemenetem poprzedniego elementu.

Z góry dzięki za każdą pomoc.

0

Ja bym użył XMLDocument. A w nim prosta jest nawigacja po kolejnych dzieciach głownego elementu i po ich dzieciach i po ich dzieciach i...

0

A jak z szybkością dla dużych plików np. kilka MB?
XmlTextReader odczytuje liniowo plik, więc jest w miare szybki, a w jaki sposób działa XmlDocument?

W sumie troche posiedziałem nad XmlTextReader i zrobiłem, kod trochę pokrętny ale działa ;)
a po nawigacji po dzieciach i ich dzieciach, użyłem atrybutu Depth.

0

Używam XmlDocument przy plikach po kilkadziesiąt MB, kilka sekund pełne ładowanie do tablicy asocjacyjnej w pętli + jakieś tam krótkie operacje.

Zajmowana pamięć roooośnie :D ale to jest nieistotne w tych moich programach.

0

Ja już zrobiłem wszystko w readerze i na moje potrzeby, czyli wgranie wszystkiego do drzewa, to wystarczyło ;)
Zależy mi żeby ładował jak najszybciej, a kilka sekund w programie użytkowym, to może być za dużo.

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