Hello,
wenn eine Applikation alleine mit der dateio arbeitet, sie also nicht auf Datenaustausch angelegt ist, dann würde ich für derartig strukturierbare Information immer eine Random-Access-Datei nehmen (Feste Feldlänge, feste Satzlänge) und kein XML-File, das dann ja variante Feld- und Satzlänge hat.
Der Verlust an Bytes ist bei derartigen Informationen verschmerzbar. Der Gewinn an Geschwindigkeit ist hingegen enorm. Außerdem muss die Datei auch nicht mehr vollständig in den Hauptspeicher passen; diese Forderung ist bei der anderen Variante zumindest mit sehr viel mehr Aufwand verbunden.
Und man kann die Daten jedes Datensatzes _direkt_ ändern, ohne die ganze Datei umkopieren zu müssen.
Problematisch ist es bei Flatfiles nur, eine quasi-atomare Operation aus Verwaltung des Datenfiles und Führung des Indexfiles zu bauen. Ohne Indexfile wird die Datenverwaltung bei größeren Beständen sonst auch schnell lästig langsam.
Und wie komplex Indexverwaltung werden kann, das ist ein Thema für sich. Damit sSollte man sich aber auf jeden Fall mal beschäftigt haben :-)
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg