問題タブ [jsonreader]
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.
android - Android JsonReaderはjson配列を反復できません
私はJsonReader
Android のストリーミング JSON パーサーで遊んでいますが、パーサーが json 配列内のすべての項目を処理しないという問題に遭遇しました。最初の項目のみが返されます。
解析に使用するコードは次のとおりです。
readResult(reader)
メソッドが問題なく配列内の最初のオブジェクトを解析して返すと確信しています。
しかし、リーダーは配列の 2 番目のオブジェクトを「無視」しているように見えました。
readResult(reader)
メソッドは次のとおりです。
解析しようとしたJSONは次のとおりです。
(これは Twitter の検索応答です。元の応答は以下のように表示されます。リンク)
私が興味を持っている唯一の部分は"results"
、2 つのオブジェクトの配列である です。
Android Developers - JsonReaderの例とこの素晴らしいチュートリアルを詳しく調べた後、私のものは基本的に彼らのものと違いがないことがわかりました。
では、私のコードの何が問題なのですか? json配列を反復できないのはなぜですか?
アップデート
のコードを貼り付けましたreadResult(reader)
json - jqgrid jsonがデータをロードしていません
jqgrid を機能させるために多くのことを試みましたが、機能しません。問題は、エラーや警告がないこと、どこが間違っているかを見つける方法です。gdの設定はこんな感じ。空白のグリッドが表示されるだけです。つまり、グリッドに行がありません。jqgrid は json データを読み込めないと思います。グリッドコードは以下です。
HTML
応答データ - gson を使用して、このデータを文字列として送信しています。レスポンスは
{"total":6,"page":1,"records":64,"rows":[{"id":1,"cell":["adeeb","1201",1]},{" id":3,"cell":["Adeeb","1202",1]},{"id":4,"cell":["Adeeb","1203",1]},{"id" :5,"cell":["Adeeb","1204",1]},{"id":6,"cell":["Adeeb","1205",1]},{"id":7 ,"cell":["Adeeb","1206",1]},{"id":8,"cell":["Adeeb","1207",1]},{"id":9," cell":["Adeeb","1208",1]},{"id":10,"cell":["Adeeb","1209",1]},{"id":11,"cell" :["Adeeb","1210",1]},{"id":12,"cell":["Adeeb","1211",1]},{"id":13,"cell":["Adeeb","1212",1]},{"id":14,"cell" :["Adeeb","1213",1]},{"id":15,"cell":["Adeeb","1214",1]},{"id":16,"cell":[ "アディーブ","1215",1]},{"id":17,"セル":["アディーブ","1216",1]},{"id":18,"セル":["アディーブ","1217",1]},{"id":19,"cell":["Adeeb","1218",1]},{"id":20,"cell":["Adeeb", "1219",1]},{"id":21,"cell":["Adeeb","1220",1]},{"id":22,"cell":["Adeeb","1221 ",1]},{"id":23,"セル":["Adeeb","1222",1]},{"id":24,"cell":["Adeeb","1223",1]},{"id":25,"cell":["Adeeb" ,"1224",1]},{"id":26,"cell":["Adeeb","1225",1]},{"id":27,"cell":["Adeeb"," 1226",1]},{"id":28,"cell":["Adeeb","1227",1]},{"id":29,"cell":["Adeeb","1228" ,1]},{"id":30,"cell":["Adeeb","1229",1]},{"id":31,"cell":["Adeeb","1230",1 ]},{"id":32,"cell":["Adeeb","1231",1]},{"id":33,"cell":["Adeeb","1232",1]} ,{"id":34,"セル":["アディーブ","1233",1]},{"id":35,"cell":["Adeeb","1234",1]},{"id":36,"cell":["Adeeb","1235" ,1]},{"id":37,"cell":["Adeeb","1236",1]},{"id":38,"cell":["Adeeb","1237",1 ]},{"id":39,"cell":["Adeeb","1238",1]},{"id":40,"cell":["Adeeb","1239",1]} ,{"id":41,"cell":["Adeeb","1240",1]},{"id":42,"cell":["Adeeb","1241",1]},{ "id":43,"cell":["Adeeb","1242",1]},{"id":44,"cell":["Adeeb","1243",1]},{"id ":45,"cell":["Adeeb","1244",1]},{"id":46,"cell":["Adeeb","1245",1]},{"id":47,"cell":["Adeeb","1246",1]},{"id" :48,"cell":["Adeeb","1247",1]},{"id":49,"cell":["Adeeb","1248",1]},{"id":50 ,"cell":["Adeeb","1249",1]},{"id":51,"cell":["Adeeb","1250",1]},{"id":52," cell":["Adeeb","1251",1]},{"id":53,"cell":["Adeeb","1252",1]},{"id":54,"cell" :["Adeeb","1253",1]},{"id":55,"cell":["Adeeb","1254",1]},{"id":56,"cell":[ "アディーブ","1255",1]},{"id":57,"cell":["Adeeb","1256",1]},{"id":58,"cell":["Adeeb","1257",1]},{"id":59,"cell" :["Adeeb","1258",1]},{"id":60,"cell":["Adeeb","1259",1]},{"id":61,"cell":[ "Adeeb","1260",1]},{"id":62,"cell":["Adeeb","1261",1]},{"id":63,"cell":["Adeeb ","1262",1]},{"id":64,"cell":["Adeeb","1263",1]},{"id":65,"cell":["Adeeb", "1264",1]}]}{"id":60,"cell":["Adeeb","1259",1]},{"id":61,"cell":["Adeeb","1260",1]},{" id":62,"cell":["Adeeb","1261",1]},{"id":63,"cell":["Adeeb","1262",1]},{"id" :64,"cell":["Adeeb","1263",1]},{"id":65,"cell":["Adeeb","1264",1]}]}{"id":60,"cell":["Adeeb","1259",1]},{"id":61,"cell":["Adeeb","1260",1]},{" id":62,"cell":["Adeeb","1261",1]},{"id":63,"cell":["Adeeb","1262",1]},{"id" :64,"cell":["Adeeb","1263",1]},{"id":65,"cell":["Adeeb","1264",1]}]}cell":["Adeeb","1264",1]}]}cell":["Adeeb","1264",1]}]}
私がもっと欠けているものは何ですか?
感謝と敬意
deserialization - Gson: 特定のフィールドが存在する場合のカスタム逆シリアル化
次のようなクラスがあります
私の入力は次のようになります。
またはこのように:
最初のバリアントは「新しい」(永続化されていない) 個人を表し、2 番目のバリアントはデータベース ID で個人を参照します。
が null でない場合id
は、デシリアライズ中にデータベースからオブジェクトをロードします。それ以外の場合は、通常の解析にフォールバックし、新しいオブジェクトとしてデシリアライズします。
私が試したこと:現在JsonDeserializer
、データベースのデシリアライゼーションを持っていますが、私が理解しているように、通常の解析に「フォールバック」する方法はありません。この回答によるとTypeAdapterFactory
、 a とを使用する必要がありgetDelegateAdapter
ます。このアプローチに関する私の問題は、JsonReader
(たとえば a ではなく)が与えられているため、入力を消費せずJsonElement
に入力に有効なが含まれているかどうかを判断できないことです。id
これを解決する方法について何か提案はありますか?
android - ストリームを含む複雑なオブジェクトをアクティビティに渡す方法
現在、メイン アクティビティから別のアクティビティにオブジェクトを渡そうとしています。私の対象は患者です
反対側に JsonReader と writer が必要です。患者をパーセル可能にする必要があることがわかりましたが、私が理解したことから、メソッド writetoparcel は特定のタイプのみをサポートしています。メソッド writeValue を使用しようとしましたが、readFromParcel でストリームを読み取る方法がわかりません。
それが十分に明確であることを願っています。前もって感謝します
java - Javaのファイルから多くのjsonオブジェクトを読み取るにはどうすればよいですか?
リーダーの対応するメソッドのJsonReader
後には、「このメソッドはリーダー インスタンスに対して 1 回だけ呼び出す必要がある」という規則が続きます。ストリームが終了するまでストリームから読み取る標準ツールはありますか?
jquery - jsonReader と jqgrid が json をグリッドに取り込まない
以下のjsonがあり、jqgridに表示しようとしています。私は次のjsonReaderを持っています
列モデル:
ジョンソン:
num、seq、および status のみにデータが取り込まれ、transTime、sd、total、および xys には取り込まれませんでした
アイデアとポインタはありますか?