Also - der FileStream wird nur einmal angelegt und liegt als Datendatei vor (Lesen und Schreiben). Daher das Positionieren.
Er wird also quasi wie ne Datenbank genutzt.
Je nach nach Zugriff werden 0-n Sätze gelesen via Index und müssen dann bei Änderung upgedatet werden. Auch dafür ist die Positionierung nötig (und der Vergleich mit der typisierten Datei).
Der ganze FileStream kann am Ende mehrere 100 Ds umfassen - die sollen nicht alle im Speicher stehen.
Die Prüfroutinen zur Stream.Size sind nicht überall drin. Werd ich mal ergänzen.