3

個々のコンポーネントを 1 つずつコピーすることは完全に可能ですが、それを行うのは非常に面倒で、かなり醜いです。ある JSONObject から別の JSONObject にすべての値をコピーする簡単な方法はありませんか? 注意すべき重要なことは、私はjson-libを使用していることです。絶対に必要な場合は、ツールを切り替えることに反対しているわけではありません。ポイントは、これはかなり非効率的な方法です。

4

1 に答える 1

4

何時間も検索した後、私はついに答えを見つけました。こんな単純なことで、ちょっと恥ずかしい。

Json-lib には、現在の JSONObject を取得し、JSONObject 全体を String に解析できる美しい機能があります。また、文字列から JSONObject を構築するメソッドは既に存在します。したがって、JSONObject を String に変換してから、JSONObject に戻すだけで済みます。文字列を変数として格納 (または戻り値として使用) し、既存の JSONObject 参照を取得して、メソッドを使用して文字列から JSONObject を再構築することができます。そのような単純な。

編集 - 簡単なコード例を挙げたいと思いました

JSONObject a = /* pretend a has 100 elements inside */
String temp = a.toString();
JSONObject b = JSONObject.fromObject(temp);
String temp2= b.toString();
if(temp.equals(temp2)){System.out.println("Well done.");}
于 2018-08-26T18:17:55.510 に答える