2016-07-08 14 views
0

を印刷逆のJava:は私がJavaでHashMapを印刷することにより取得した文字列を持つハッシュマップ

String a = "{data={field1={field3=value3}, field2={field4=value4, field5=value5}}}" 

をハッシュマップにこの文字列を解析して変換することができ、Javaのいずれかの機能があります。この特定の文字列の場合、この関数はMap<String, Map<String, Map<String, String>>>を返します。

+3

どうしたのですか?データをシリアライズする場合、 'toString'は方法ではありません。 –

+0

私は関数をテストしたいのですが、別の関数からタイプマップで変数の内容を取得し、それを使って自分の関数をテストする必要があります。この変数を出力すると、非常に長い文字列が得られます。この文字列をハッシュマップに戻して、テスト関数で使用できるようにしたいのです。 –

+1

なぜそれを 'String'に変換するのですか? –

答えて

0

Googleのguavaライブラリには、同様のパーサーが記述されています。答えへのリンク:Convert string representing key-value pairs to Map

+2

OPには単純な 'Map'だけでなく_nested_ mapsが必要です。このアプローチはうまくいきません。私は値としてネストされたマップの再帰的な解決を試みるためにそれを拡張することができると思うが、それは誰も開かないワームのように思える。 –

+0

はい、あなたは正しいと思います。ドキュメントは 'Map '出力を表示します。このライブラリを使用している間は、エントリの 'value'部分に再帰的パーサーを書くだけです。 – pikaynu

関連する問題