.NETアプリケーションでは、アプリケーションプロジェクトファイルのバイナリシリアル化が必要です。メインプロジェクトクラスファイルは、次のメソッドを使用して自身をシリアライズします(すべての例外処理はわかりやすくするために削除されています)。自分の.NETシリアル化を読み取ることができません
public void ProjectSerialize(string filename)
{
Stream s = File.Open(filename, FileMode.Create);
BinaryFormatter b = new BinaryFormatter();
b.Serialize(s, this);
}
クラスには、格納されている多くのメソッドとプロパティがあります。今はすべて正常に動作しますが、新しいバージョンのプロジェクトクラスを持つ新しいバージョンのアプリケーションをリリースしたい場合、以前のバージョンと互換性がありません。私はそれが設計上の誤りであることを知っています。もちろん、自分で定義したシリアル化を使用しなければならなかったので、この重要なタイプのファイルに対して.NETに依存してはいけません。
私の質問は、以前のシリアル化されたプロジェクトファイルをどのように読むことができますか?私が知っておくべきフォーマットがありますか?.NETはどのようにして最初にシリアライズしましたか?私は顧客に古いファイルフォーマットとの互換性を持たせたいと思っていますが、今は古い保存済みのプロジェクトファイル用のファイルコンバータを書く方法はありません。
おかげで、
エリック
自分の手書きを読むことができません。 :P – Cerebrus