3

私はと持ってDataSet600K recordsます。これらのデータをファイルに
書き込もうとすると、常に取得します。 現時点でのデータの書き方は以下のとおりです。 これを行うための最もメモリ効率の良い方法は何ですか?XMLOutOfMemoryException


using (MemoryStream output = new MemoryStream())
{
    WorkingDataset.WriteXml(output, XmlWriteMode.WriteSchema);
    using (FileStream outputFile = File.Create(FilePath))
    {
         using (GZipStream compressedStream = new GZipStream(outputFile, CompressionMode.Compress))
         {
        compressedStream.Write(output.GetBuffer(), 0, (int)output.Length);
         }
        }
  }
4

1 に答える 1

4

なんで使ってるMemoryStreamの?ディスクに直接書き込むだけです。

using (var fileStream = File.Create(FilePath))
{
    using (var zipStream = new GZipStream(outputFile, CompressionMode.Compress))
    {
        WorkingDataset.WriteXml(zipStream, XmlWriteMode.WriteSchema);
    }
}
于 2013-02-14T09:11:43.500 に答える