問題タブ [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.

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

javascript - 余分な文字列で始まるjsonを読み取るJavascript

JSON の URL を読み取ろうとしていますが、JSON の開始前に余分な文字列が表示されます

JSON スクリプトは次のようなものです。

以下のJavaScriptを使用して、このJSONを読み取ろうとしています:

Java スクリプト/jQuery または ajax を使用して、このタイプの Json を読み取る方法はありますか。

0 投票する
0 に答える
460 参照

android - Android で Gson ストリーミング JsonReader を使用する場合の OutOfMemoryException

以前は、ツリー構造を使用してこれを試していました。JSON 応答は約 3.5 MB であるため、この方法で解析しようとすると古いデバイスのメモリが不足することは理解できました。

私の質問は、ストリーミング JsonReader に切り替えた後も OutOfMemoryException が発生するのはなぜですか? sd カードの .json ファイルへの応答を保存し、そこから読み取ることもできるため、文字列をメモリに保存する必要はありません。

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

extjs - リーダーでマッピングを定義する

複数のストアで再利用したいカスタム ComboBox コンポーネントを定義しました。以下のようなシンプルな構成になっています。

モデルは

以下のように、複数のストアをそれぞれ独自のプロキシ構成で定義し、一意の storeId で識別します。

サーバーは以下のように json で応答します

異なるプロキシ URL を持つ departmentStore のように、そのようなストアを複数持つことができ、サーバーの応答はどこにある可能性がありますか?

リーダーでマッピングを定義したいのですが、次のように、異なるストアでデータを異なる方法でマッピングする手順を使用します。 & departmentStore の「name」への departmentName。

モデルの各フィールドのマッピングを定義するオプションがあることを見てきましたが、サーバーはフィールド名が列名になるリレーショナル データベースからのデータで応答するため、リーダーでマッピングを定義したいと思います。

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

android - GSON: END_OBJECT が呼び出されることはありません

次のような JSON があります。

{"aData":

{「トーナメント」:

{"新着":[

{"token":"1-token", "prio":"6", "status":"inactive", ..., "_timeCreated":"2014-04-14 14:44:49", "_timeChanged ":"2014-08-08 12:30:20"},

{"token":"2-token","prio":"8","status":"inactive",...}

] }

}

}

new JSONObject(str)JSON ファイルは 8 MB の大きさであり、デフォルトまたは .xml 内で解析できるため、有効ですVolley's JsonObjectRequest

私が使用するコード:

問題は、ケースEND_OBJECTに到達しないことです。以下を に出力しますlogcat

"_timeChanged":"2014-08-08 12:30:20"そのため、最初のオブジェクトの に到達し、新しいトークンに移動する代わりにreader.hasNext()向きを変えます。falseBEGIN_OBJECT

私は何が欠けていますか?ティア

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

java - Using JsonReader to read dynamic json files

As part of an API I am creating, I have allowed the specification of configurations (which can be any storage format, just one implementation is with Json). As part of that, my code will have no knowledge of what the configuration truly holds. I am using the Gson library for reading a json-implemented config, however I have hit a snag in how numbers are handled with it. My current code uses a recursion to read the inner objects, and contains the following:

#xA;

The JsonConfigurationSection class is simply a wrapper around a Map:

#xA;

An example of a configuration might be

#xA;

The issue that has arisen is that the JsonReader only provides a next token for "Number", but then specific getters that are for longs, doubles, and ints.

What would be the best way to get what that number is without any loss of data and using the "best" storage for it? (I am willing to drop longs, but would rather see if I could keep them for consistency)

0 投票する
0 に答える
208 参照

java - 複雑な json ストリームに JSONReader を使用する必要がありますか?

いくつかのレベルのネストを持つ非常に複雑な JSON blob を解析しようとしています。サーバーから返される JSON の構造は、呼び出しごとに変わる可能性があります。

org.json を使用して再帰的な JSON パーサーを作成しましたが、パフォーマンスが良くありません。JSONReader がより優れたパフォーマンスを提供することは知っており、JSONReader を使用してこの複雑な JSON を再帰的に解析するモジュールを作成しようとしています。

私が見たところ、JSONReader は、JSON の構造がわかっているストリームに適しています。継続的に変化する可能性のある JSON にこれを使用することをお勧めしますか? Android ドキュメントの例 (およびオンラインで見つけた他の例) では、JSON の構造が固定されていることを前提としています。

0 投票する
0 に答える
98 参照

android - 特定のオブジェクトjsonをjsonとして取得するAndroid JsonReader

入力ストリームとしてjsonreaderを使用して、非常に大きなjsonファイルを解析しています。このjsonにはジオメトリオブジェクトがあり、この特定のオブジェクトで、個々の値を解析するのではなく、json自体を取得したいと考えています。

これは、この関数を使用して個々の値を変換するよりも、json 文字列を作業ジオメトリに変換する方が簡単だからです...

ST_GeomFromGeoJSON();

jsonreader を使用するときに、オブジェクトの基になる json を取得する方法はありますか?

if (tag.equals("geometry")) {
reader.beginObject();

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

android - GZIP エンコーディングを追加すると、MalformedJsonException が発生します

基本リクエストにこのヘッダーを追加しました:「Accept-encoding」、「gzip」

これにより、MalformedJsonException が発生し、JsonReader.setLenient(true) を使用するように促されました。

それをサポートするために、コードを次のように変更しました。

私はまだ同じエラーが発生しています。