Wydajne zapisywanie do pliku

0

Cześć

Napisałem sobie aplikacyjkę która zbiera pewne dane i wyświetla je na kontrolce ListView. Te dane często mają różne rozmiary. Czasami jest to 10 pozycji, czasami nawet 1000. Jak najlepiej to zapisywać i odczytywać z/do pliku?

Serializacja jest spoko, ale musi być stały rozmiar tablicy. W programie korzystam z Listy więc jej rozmiar nie jest stały.

Co proponujecie? Czy C# ma wbudowane jakieś mechanizmy plików bazodanowych? Coś jak BDB z PHP? :)

pozdro

0

Czemu przy serializacji musi byc staly rozmiar tablicy? Mozesz przeciez zserializowac typ, ktory jest tablica bez podawania jego rozmiaru.

Niestety w takim przypadku zapis jest troche kiepski, gdyz za kazdym razem zapisujesz na nowo cala tablice.

Moze zatem serializacja jako xml i po prostu appendowanie na koncu pliku? Wkoncu obiekty mozesz zserializowac jako xml'e bez problemu.
Problemem, bedzie to, ze plik bedzie kilka razy wiekszy a i super wydajne to to nie bedzie.

Hmm... Jezeli obiekt danych daloby sie przedstawic jako cos co ma staly rozmiar to wtedy mozna by po prostu appendowac binarnie wpisy do pliku, pozniej odczyt co iles bajtow (tyle co obiekt) i wpisywanie reczne do tablicy. Mysle, ze to by byla najszybsza opcja zapisu i odczytu.

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