0

クラスのプロパティを byte[] 配列またはストリームに自動的にシリアル化する可​​能性はありますか?

Stream stream = File.Open(@"C:/traiBin.bin", FileMode.Create);
BinaryFormatter bFormatter = new BinaryFormatter();
bFormatter.Serialize(stream, this.rcpt);
stream.Close();

上記の例では、名前空間、クラス名、変数名などを含むクラス全体をシリアル化しました。自動化されたソリューションがない場合は、手動で行います。

よろしく、マーク

4

3 に答える 3

0

私はあなたがしなければならないと思います:

または、独自のシリアル化メカニズムを実装します (要件に基づいてそれほど難しくない場合があります)。そのため、ストリームでは、保存されたタイプを識別するヘッダーの種類があり、タイプ データ ストリームの後、別のヘッダーとそのタイプ データ ストリームが再び続きます。の上...

または、 http://www.codeproject.com/KB/cs/generic_deep_cloning.aspxのようなものを使用できます。シリアライゼーションのほんの一例です。記事の著者はディープ クローニングの目的で使用しています。

于 2011-08-18T09:07:20.137 に答える
0

Marc Gravell のprotobuf 実装は、属性付きモデルと DataContracts をサポートしています。protobuf は、データの最終サイズに関しても非常に無駄がありません。

于 2011-08-18T10:28:38.070 に答える