問題タブ [jsonnode]

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 投票する
0 に答える
43 参照

java - JsonNode.fields() hasNext() は false を返し、 JsonNode.iterator() は true を返します

1 つのフィールドを除いて値が null の場合、JsonNode から値を削除する必要があります。JsonNode.Iterator() を使用して JsonNode の反復処理を削除できますが、値のみが得られます。キーであるフィールドsubstitutionItemsを確認する必要があり、フィールドがnullであっても削除しないでください。

JsonNode.fields() を使用してキーと値のペアを取得しようとしており、フィールドがsubstitutionItemsであるかどうかを確認して、削除しないか、削除してください。

しかしそうすると、 fields.hasNext()は false を返します。

どうすれば望ましい結果を得ることができますか?

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

java - jsonNode オブジェクトのすべてのサブノードを反復するにはどうすればよいでしょうか?

JsonNode オブジェクトのすべてのノードを反復処理したい. JsonNode オブジェクトの下から価格の詳細を取得したい. 価格の詳細を取得する方法を教えてください

応答

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

java - Assertj が Jackson JsonNode で動作しない

assertj と Jackson の JsonNode を組み合わせて使用​​しています。これまでのところ、私は使用してAssertions.assertThat(objectNode0).isEqualTo(objectNode1);おり、すべて正常に動作しています。

ここで、比較でいくつかのフィールドを無視する必要がありusingRecursiveComparisonます. これを克服する方法はありますか?ここに私のサンプルコードがあります:

}

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

java - Jackson ObjectMapper を使用して文字配列をバイトに変換する際の問題

String.valueof(char array).getBytes("UTF-8") および new ObjectMapper.writeValueAsBytes(char array) を使用して Character 配列をバイトに変換しているときに、異なるバイト配列のセットを取得しています

例:

出力:

このサイトのバイト エンコーディング チャートを確認したところ、 ObjectMapper.writeValueAsBytes() は \ と n を 2 つの異なる文字と見なし、先頭と末尾に二重引用符文字を追加していると考えました。この動作により、このバイトを JsonNode に変換しているときに、Json の操作に使用できない TextNode を取得しています。

String.getBytes() は \n を 1 文字と見なし、先頭と末尾に二重引用符を追加しません。このバイトを JsonNode に変換しているときに、Json の操作に使用できる ObjectNode を取得しています

バイトを JsonNode に変換するときに TextNode を作成しないように ObjectMapper を構成する方法はありますか? または String.getBytes() を使用せずに適切なバイト配列を取得する他の方法はありますか?