Pliki XML, które zajmują dużą przestrzeń dyskowa mogą zostać skompresowane w trakcie tworzenia:

using (GZipStream gs = new GZipStream(file, CompressionMode.Compress))
   using (XmlWriter writer = XmlWriter.Create(gs))
      writer.WriteStartDocument();
      //... 

Odczytanie tak zapisanego strumienia odbywa się:

using (GZipStream gs = new GZipStream(file, CompressionMode.Decompress))
   using (XmlReader reader = XmlReader.Create(gs))
   //...

Jeżeli plik XML jest stosunkowo duży i używany jest w ramach aplikacji, to powyższe rozwiązanie pozwoli zaoszczędzić przestrzeń dyskową.

Kategorie: .NETC#