タグ付けされた質問 「serialization」

シリアライゼーションとは、データ構造を簡単に保存または送信できる形式に変換し、その後再構築するプロセスです。

5
型は正しく逆シリアル化するためにJSONオブジェクト(たとえば、{“ name”:“ value”})を必要とするため、JSON配列(たとえば[1,2,3])を型 ''に逆シリアル化できません
私はこのJSONを持っています: [ { "Attributes": [ { "Key": "Name", "Value": { "Value": "Acc 1", "Values": [ "Acc 1" ] } }, { "Key": "Id", "Value": { "Value": "1", "Values": [ "1" ] } } ], "Name": "account", "Id": "1" }, { "Attributes": [ { "Key": "Name", "Value": { "Value": "Acc 2", …

13
Jackson databind enumの大文字と小文字を区別しません
大文字と小文字を区別しない列挙値を含むJSON文字列をデシリアライズするにはどうすればよいですか?(Jackson Databindを使用) JSON文字列: [{"url": "foo", "type": "json"}] そして私のJava POJO: public static class Endpoint { public enum DataType { JSON, HTML } public String url; public DataType type; public Endpoint() { } } この場合、JSONの逆シリアル化は、"type":"json"機能する場所で失敗し"type":"JSON"ます。しかし、私"json"は命名規則の理由からも働きたいです。 POJOをシリアル化すると、大文字になります "type":"JSON" @JsonCreator@JsonGetter の使用を考えました: @JsonCreator private Endpoint(@JsonProperty("name") String url, @JsonProperty("type") String type) { this.url = url; this.type …

7
列挙型メンバーをJSONにシリアル化する
PythonEnumメンバーをJSONにシリアル化して、結果のJSONを逆シリアル化してPythonオブジェクトに戻すにはどうすればよいですか? たとえば、次のコードは次のとおりです。 from enum import Enum import json class Status(Enum): success = 0 json.dumps(Status.success) エラーが発生します: TypeError: <Status.success: 0> is not JSON serializable どうすればそれを回避できますか?

4
Json.net派生型のシリアライズ/デシリアライズ?
json.net(newtonsoft) 私はドキュメントを調べていますが、これについて何も見つけることができません。 public class Base { public string Name; } public class Derived : Base { public string Something; } JsonConvert.Deserialize<List<Base>>(text); これで、シリアル化されたリストにDerivedオブジェクトがあります。リストを逆シリアル化して派生型を取得するにはどうすればよいですか?

9
オブジェクトをシリアル化する代わりにParcelableを使用する利点
私が理解し、通りBundleやParcelableアンドロイドを行う連載で道に属している。それは、アクティビティ間のデータの受け渡しの例に使用されます。しかしParcelable、たとえば、ビジネスオブジェクトの状態を内部メモリに保存する場合に、従来のシリアル化の代わりに使用することで何か利点があるのでしょうか。従来の方法よりも簡単ですか、それとも高速ですか?クラシックシリアライゼーションをどこで使用する必要がありますか?


15
不正なバイトカウント長によって破損したシリアル化された文字列を修復する方法は?
画像アップロードプラグインでHotaru CMSを使用していますが、画像を投稿に添付しようとするとこのエラーが発生します。それ以外の場合はエラーは発生しません。 unserialize()[function.unserialize]:オフセットでのエラー 問題のあるコード(エラーは**と一致しています): /** * Retrieve submission step data * * @param $key - empty when setting * @return bool */ public function loadSubmitData($h, $key = '') { // delete everything in this table older than 30 minutes: $this->deleteTempData($h->db); if (!$key) { return false; } $cleanKey = preg_replace('/[^a-z0-9]+/','',$key); if …

3
TypeAdapterを使用したオブジェクト内の(多数の)1つの変数のGsonカスタムセラライザ
カスタムTypeAdapterを使用する多くの簡単な例を見てきました。最も役に立ちましたClass TypeAdapter<T>。しかし、それでも私の質問にはまだ答えていません。 オブジェクトの単一のフィールドのシリアル化をカスタマイズし、デフォルトのGsonメカニズムが残りを処理するようにします。 説明のために、このクラス定義を、シリアル化するオブジェクトのクラスとして使用できます。最初の2つのクラスメンバーと基本クラスのすべての公開されたメンバーをGsonにシリアル化させ、以下に示す3番目と最後のクラスメンバーのカスタムシリアル化を行いたいと思います。 public class MyClass extends SomeClass { @Expose private HashMap<String, MyObject1> lists; @Expose private HashMap<String, MyObject2> sources; private LinkedHashMap<String, SomeClass> customSerializeThis; [snip] }

9
オブジェクトがC#でシリアル化可能かどうかを確認する方法
C#のオブジェクトがシリアル化可能かどうかを確認する簡単な方法を探しています。 ご存知のとおり、ISerializableインターフェイスを実装するか、[Serializable]をクラスの先頭に配置することにより、オブジェクトをシリアル化可能にします。 私が探しているのは、属性を取得するためにクラスを反映する必要なく、これをすばやくチェックする方法です。isステートメントを使用すると、インターフェイスが高速になります。 @Flardの提案を使用して、これは私が思いついたコードです。悲鳴はより良い方法があるということです。 private static bool IsSerializable(T obj) { return ((obj is ISerializable) || (Attribute.IsDefined(typeof (T), typeof (SerializableAttribute)))); } または、オブジェクトのタイプを取得してから、そのタイプでIsSerializableプロパティを使用することもできます。 typeof(T).IsSerializable これは、クラスに他のクラスが含まれている場合に対処しているクラスだけに思えるかもしれませんが、すべてを確認するか、@ pbが指摘したようにシリアル化してエラーを待機する必要があります。
94 c#  serialization 

6
シリアル化可能なオブジェクトをファイルに保存/ファイルから復元する方法は?
オブジェクトのリストがあり、それをコンピューターのどこかに保存する必要があります。私はいくつかのフォーラムを読みましたが、オブジェクトはでなければならないことを知っていますSerializable。しかし、私が例を示すことができれば素晴らしいでしょう。たとえば、次の場合: [Serializable] public class SomeClass { public string someProperty { get; set; } } SomeClass object1 = new SomeClass { someProperty = "someString" }; しかし、どうすればobject1自分のコンピューターのどこかに保存して、後で取得できますか?


6
特定のフィールドのジャクソンJSONカスタムシリアル化
Jackson JSONプロセッサを使用してカスタムフィールドレベルのシリアル化を行う方法はありますか?たとえば、私はクラスを持っていると思います public class Person { public String name; public int age; public int favoriteNumber; } 次のJSONにシリアル化: { "name": "Joe", "age": 25, "favoriteNumber": "123" } age = 25は数値としてエンコードされ、favoriteNumber = 123は文字列としてエンコードされることに注意してください。箱から出してすぐに、ジャクソンintは多くの人を集めます。この場合、favoriteNumberを文字列としてエンコードします。

6
null可能なintをシリアル化する
null可能なintを持つクラスがありますか?xml要素としてシリアル化するように設定されたデータ型。値がnullの場合にXMLシリアライザーが要素をシリアル化しないように設定する方法はありますか? [System.Xml.Serialization.XmlElement(IsNullable = false)]属性を追加しようとしましたが、「IsNullableが 'falseに設定されていない可能性があるため、タイプを反映するエラーがあったことを示すランタイムシリアル化例外が発生します。 'Nullableタイプの場合。'System.Int32'タイプを使用するか、XmlElement属性からIsNullableプロパティを削除することを検討してください。 [Serializable] [System.Xml.Serialization.XmlRoot("Score", Namespace = "http://mycomp.com/test/score/v1")] public class Score { private int? iID_m; ... /// <summary> /// /// </summary> public int? ID { get { return iID_m; } set { iID_m = value; } } ... } 上記のクラスは次のようにシリアル化されます: <Score xmlns="http://mycomp.com/test/score/v1"> <ID xsi:nil="true" /> </Score> しかし、nullのIDの場合、ID要素はまったく必要ありません。これは、主にMSSQLでOPENXMLを使用すると、次のような要素に対してnullの代わりに0が返されるためです。
92 c#  .net  xml  serialization 


11
オブジェクトがC#の数値であるかどうかの確認
オブジェクトが数値であるかどうかを確認したいので、.ToString()数字とを含む文字列になります+。-、. .netのような単純な型チェックで可能if (p is Number)ですか(例:)? または、文字列に変換してから、解析してdoubleにしてみますか? 更新:オブジェクトがint、uint、float、doubleなどであることを明確にするために、それは文字列ではありません。次のように、オブジェクトをxmlにシリアル化する関数を作成しようとしています。 <string>content</string> または <numeric>123.3</numeric> または例外を発生させます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.