私のアプリケーションでは、XML にすべてのデータが含まれており、5 ~ 10 MB を超える場合があります。ファイルは、プログラムの実行中に何度もロードおよび保存されます。ただし、高速ですが、サイズが大きくなるとファイルが壊れることがあるようです。ファイルが破損する理由はわかりませんが、すべての場合でファイルが 5 MB 以上だったので、XML ファイルが大きくなるほど破損しやすくなると思います。そこで、XMLファイルの圧縮・解凍ライブラリを提案してください
- できれば、zip/lzw/7zip/rar などの一般的な圧縮を使用します。
- これは高速でなければなりません。たとえば、最速の圧縮レベルで 10 MB のファイルを圧縮/解凍し、スペースを犠牲にするのに 100 ミリ秒以上かかることはありません。
- 簡単に統合できます。
私はコードを使用しています:
XMLDocument.Load(XML_File.xml)
XMLDocument.Save(XML_File.xml)
だから私は次のようなものが欲しい:
XMLDocument.Load(Library.Load(XML_File.zip))
Library.Save(XMLDocument)
これで上記の問題が解決することを願っています。他の代替案はありますか?
もう 1 つの解決策を考えています。winrar を使用したことがある場合は、ファイルが破損した場合に回復レコードを使用して修正できるように、.rar ファイルに回復レコードを追加するオプションがあることに気付くでしょう。プログラムで C# の XML ファイルで使用できる類似のものはありますか? お気に入り:
try{
XMLDocument.Load(Library.Load(XML_File.zip))
}
catch{
XMLDocument.Load(Library.Load(Library.File_Recover(XML_File.zip)))
}