実際にはjsonが8ビットにfloat値を格納することしかできないので、どのように動作するのかわかりません。JSONObject put (String name, long value)
もちろん、大きな数字を格納することはできますが、数字が大きくなるほど、jsonに格納される値はより正確になります。例えば、18,446,744,073,709,551,614の値を8ビット浮動小数点で格納することはできません。値を取得しようとすると、18,446,744,073,700,000,000のようになります。JSONObject put(String name、long value)がint64値をjsonに格納する可能性はありますか?
私は好奇心が強いので、JSONObject put(String name、long値)?
私は理解しますが、完全ではありません。なぜなら、jsonのテキストファイルでは、値が浮動小数点、整数またはint64かどうかを示すフラグがないからです。例1234はそれらのすべてである可能性があります。では、jsonをファイルに保存して後で再度ロードすると、どのように動作するのですか? – loki
再び、これはインプリメンテーションに依存します。 Android JSONObjectの実装では、解析型の値を整数型(long型またはint型の場合はint型)として単純に解析します。失敗した場合はdouble型として解析し、失敗した場合はunquoted型の文字列として扱います。 – Okas