Frage

Könnte jemand bitte geben Sie mir ein Beispiel dafür, wie kann ich ein byte [] zu einem Arraylist von Hashtables mit C # zu konvertieren? (Das Byte [] die Arraylist von Hashtables die zuvor serialisiert wurde)

. Hinweis: Ich bin unter Windows Mobile, die BinaryFormatter bietet keine

War es hilfreich?

Lösung

  

Auch meine Arraylist automatisch von dem Datenbank-API in das Byte umgewandelt wird []

Ehrlich gesagt, gehen Sie auf Haben das tatsächliche Serialisierung-API verwendet zu finden, um eine Chance zu rekonstruieren diese Daten zu stehen. Es ist wahrscheinlich BinaryFormatter, die notorisch nicht tragbar und versions intolerant ist.

Wenn Sie Notwendigkeit Daten als binär zu speichern, und verwenden Sie es langfristige (Datenbank) und zwischen Plattformen (CF), dann werden Sie eine geeignete Serializer zu verwenden. Zum Beispiel protobuf-net funktionieren würde, in Haupt (obwohl es nicht untypisierten ArrayList mag, lieber getippt List<T> usw.).

Wenn die Daten sind zur Zeit gespeichert, wie BinaryFormatter, dann Ihre beste Wette wäre, um sie zu extrahieren Ihr aktuelles System und umverpacken es (vielleicht in einer anderen Spalte oder Tabelle) in einem geeigneteren Serialisierungsformat.

Andere Tipps

Wenn Sie sagen, „das war vorher serialisiert“ meinen Sie „serialisiert mit BinaryFormatter“? Wenn ja, nein - Sie würden BinaryFormatter müssen deserialisieren. Wenn das Compact Framework nicht, dass unterstützen, sind Sie im Grunde kein Glück. Ich meine, wenn das Serialisierungsformat irgendwo dokumentiert ist (ich bin mir nicht sicher, ob es oder nicht) Sie könnte Ihre eigene BinaryFormatter schreiben - aber es wäre wahrscheinlich etwas schwierig sein

.

Stattdessen sollten Sie eine Serialisierung Format wählen, die überall unterstützt Sie brauchen / deserialize serialisiert werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top