Ich muss ein Objekt in eine Binärdatei schreiben. Meine Struktur sieht so aus.
%Vor%Was ist der beste Weg, um die obige Operation durchzuführen? Grüße Raju
Wie soll die Ausgabe genau aussehen? Sie können ihn schreiben manuell (siehe Lirik Antwort), oder wenn Sie Runtime-Unterstützung möchten, vielleicht so etwas wie protobuf-net.
Dies wäre trivial zu tun, wenn Sie Klassen wurden (was ich erwarte, dass Sie eigentlich sein soll), sondern zusätzlich protobuf-net v2 (nur als Quelle zur Zeit verfügbar) sollte mit dem „wie“ arbeiten.
Für Info, hier ist, wie ich es als Klassen tun würde:
%Vor%Dies könnte mit Serialisierung Attribute eingerichtet werden, oder (wieder protobuf-net v2 verwenden) so etwas wie dieser Test (die Durchgänge):
%Vor%(und schreibt 46 Bytes)
Es sollte mit privaten Feldern, Structs usw. arbeiten - ich müsste einen Blick darauf werfen ...
Wenn Sie Attribute hinzufügen können, müssen Sie das Modell nicht manuell einrichten (die ersten 4 Zeilen). Der Rest des Codes zeigt nur die vollständige Round-Trip-Nutzung.
Nach meinem Verständnis ist BinaryFormatter das Werkzeug für diesen Job.
Bearbeiten: Wie Marc in den Kommentaren erklärt, hat BinaryFormatter gewisse Nachteile. Er empfiehlt protobuf-net in seinem Blog.
Hier ist ein Beispiel , wie Sie eine Binärdatei lesen / schreiben können:
%Vor%