問題タブ [gson]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
8591 参照

arrays - Gsonまたはネストされた内部クラスを使用した内部クラスの任意のオブジェクトjson配列の逆シリアル化

1 つの Json 文字列を Gson で逆シリアル化しようとすると問題が発生します。文字列は次のようになります (注: 単純化しただけですが、問題のある部分はそのままにしておきます。そのため、Json 構文エラーが発生する可能性がありますが、使用している文字列がオンライン バリデーターで確認されています。大丈夫です):

ここで、json 配列 (「定義」と「行」) を逆シリアル化しようとすると、問題が発生します。残りのフィールドは、逆シリアル化で適切な値を取得します。私が使用しているクラス定義は次のとおりです(簡単にするためにゲッター/セッターはありません):

RateContainer (Gson 仕様によると、クラス Container への内部静的クラス):

Json 文字列を解析するには、次を使用します。

次の例外が発生します。

クラス定義にうまく機能しない何かがなければならないようです。Gson API を確認しましたが、リストを逆シリアル化するために通常行うことは次のとおりです。

したがって、次のようなものを使用して、これらの配列を最初に取得できるのではないかと考えました。

次に、「定義」と「行」を取得しますが、すべてを Container オブジェクトに保持することをお勧めします。このような方法でこれらのリストを逆シリアル化する方法はありますか? クラス定義に何か問題がありますか?

よろしくお願いします!

0 投票する
2 に答える
1482 参照

java - json 文字列を逆シリアル化する fieldName から fieldValue へのマップを作成する方法

単純な文字列型のフィールドと 1 つのマップのみを持つクラスがあります。

私の要件は、fieldName から fieldValue (Map) へのマップを作成することですが、fieldNames は Myclass のフィールド名ではなく @SerializedName と同じにする必要があります。MyClass のような複雑な型の場合、低レベルの逆シリアル化を自分で行う必要がある場合があることに気付きました。誰かがこれに出くわしましたか?

0 投票する
1 に答える
3106 参照

java - gsonライブラリを使用してjsonファイルを準備する方法

2つのプレーンポジョオブジェクトがあります。

元:

以下のようなGsonライブラリを使用してJSONファイルを作成する方法:

Gson.tojsonメソッドを使用してJSONファイルを準備する方法。

0 投票する
3 に答える
7803 参照

json - Play での JSON シリアライゼーションのカスタマイズ

一部のオブジェクトを JSON 値として返すために使用renderJSON(Object)していますが、1 つのフィールドを除いて正常に動作しています。json テンプレート全体を手動で作成することなく、その 1 つのフィールドに追加する簡単な方法はありますか?

0 投票する
2 に答える
1265 参照

java - Google gsonを使用したjsonオブジェクトのシリアル化/逆シリアル化

Java オブジェクトを json との間でシリアライズ/デシリアライズしたい。google gson が望ましいです。クラスAを持ってみましょう:

次に、 new Gson().toJson(new A()) を呼び出すと、次のようになります。

しかし、私は持っていたい

したがって、コンパイル時にクラス名を知らなくても、リフレクションを使用してデシリアライズできます。どうすればいいですか?ありがとうございました。

0 投票する
3 に答える
24848 参照

java - GSONでマップのマップをシリアライズするには?

GSON を使用して、以下の Example クラスを JSON にシリアライズしたいと考えています。

次の出力が得られると予想していました。

しかし、関数を呼び出すとtoJSON()戻ります

GSON は MapRange内で MapをシリアライズできないようですGeneral。これは GSON の制限ですか、それともここで何か間違っていますか?

0 投票する
2 に答える
23795 参照

android - Android で GSON を使用して複雑な JSON オブジェクトを解析する

私は Java プログラミングに比較的慣れていないため、ネットワークを介して複雑な JSON オブジェクトを解析する必要があります。私は先日 GSON に関するドキュメントを読んでいましたが、このタイプの構造を完全に解析することができたのはあまり幸運ではありませんでした:

この質問と同様に機能させることができましたが、その追加の配列レベルを機能させる方法がわかりません。

0 投票する
2 に答える
193 参照

jquery - JSP ビューに表示される誤った日付

日付の表示にヘルプが必要です。

私はjquery-1.4.2.min、json-simple-1.1、gson-1.4を使用しています

スケジュールされた期間に実行されたコマンド出力を保存するために使用されるテーブルがあります。データは 2010 年 8 月 12 日から始まり、2011 年 2 月 1 日に終了します。

テーブル構造は次のとおりです。

問題は、JSP ビューに表示されるデータが期待どおりではないことです。この問題は、サンプル データを使用して 1 か月前に初めてテストしたときは発生しませんでした。現在、150.000 を超えるレコードのリアルタイム データを使用すると、ビューが台無しになります。

サンプルデータ: サンプルデータ

合格=1、不合格=0

JSP ビュー:
jspビュー

json で指定された応答が誤った日付のデータであることを Firebugs で確認しました。

IE7、IE8、FF3.6、Chrome8 を使用してこれをテストしましたが、同じ結果が得られました。

誰かが以前に同様の問題を抱えていますか? 解決策は何ですか?

0 投票する
2 に答える
3183 参照

java - Gsonを使用したJSONからのクラスのフィールドの初期化

Gsonを使用してフィールドを初期化しようとしていますが、成功しません。

それをしようとしています:

TaskHolderクラス:

埋めるためtaskに何ができるかアドバイスしてください。TaskHolder

0 投票する
2 に答える
2128 参照

java - Google の Gson を使用して Bugzilla JSON を逆シリアル化する際の問題

"text" : {} と "text" : "blah blah blah" を返すことがあるため、Bugzilla サーバーから戻ってくる JSON で問題が発生しています。Bugzilla は、バグの説明がない場合、前者を返します。なぜもっと賢明な "text" : "" として戻ってこないのか、私は当惑していますが、そうです。

Gson のターゲット オブジェクトに text という名前の文字列がある場合、{} ケースが表示されると、それは文字列ではなくオブジェクトであることが示されているため、オブジェクトはオブジェクトになります。

Gsonにこれを解析させる方法について何か提案はありますか?