JSON:
{"attribute1":11, "attribute2":"string atribute"}
attribute1 と attribute2 の種類を検出したい:
- attribute1 は整数です
- attribute2 は文字列です
jsonObject.getAttributeType("attribute2"); // 出力する必要があります: string/integer/boolean.
PHP または OBJC で実現するのは非常に簡単でした。提案?
(パッケージの Android はorg.json
、json.org サイトで見つけることができるものと同じであると想定しています... here。)
基礎となる値を提供するa の唯一のメソッドはJSONObject
...強制せずに...ですJSONObject.get(name)
。が既知の場合name
、結果は値を内部的に表すオブジェクトです。コードの包括的なトロールは行っていませんが、次のいずれかのタイプのみであると考えられます。
Boolean, Long, Double, String, JSONArray, JSONObject
を使用してこれらを区別できるはずですinstanceof
。
しかし、これが正しいことかどうかを自問する必要があります。APIを介して JSON オブジェクト属性を処理する通常の方法JSONObject
は、期待する型に変換するメソッドを使用することです。ほとんどの場合、数値が送信される42
か、42.0
または"42"
...として送信されるかどうかは問題ではありません。意図が簡単に判断できる場合は、うるさくしないのが最善です。