エチケット
試したことと、なぜうまくいかなかったのかについて、もっと具体的に説明する必要があります。
ここでは、適切なコード サンプルLogObject
が非常に役立ちます。
理想的には、SSCCEを提供して、他のユーザーが自分の問題を簡単にテストできるようにすることをお勧めします。
答え
次のように名前:値のペアを抽出できます。
String toParse = "ObjectGUId=1abcde&ObjectType=2&ObjectTitle=maximumoflife&Content=racroi&TimeStamp=2012-11-05T17:20:06.056";
String[] fields = toParse.split("&");
String[] kv;
HashMap<String, String> things = new HashMap<String, String>();
for (int i = 0; i < fields.length; ++i)
{
t = fields[i].split("=");
if (2 == kv.length)
{
things.put(kv[0], kv[1]);
}
}
私はそれらを HashMap に入れることを選択しましたが、名前の部分 ( kv[0]
) を見て、それを使って何かをすることを選択することも簡単にできます。例えば:
if kv[0].equals("ObjectGUId")
{
logObject.setGUId(kv[1]); // example mutator/setter method
}
else if //...
ただし、すべてのフィールドLogObject
はプライベートであり、メソッドを示していないため、外部からそれらを設定する方法があることを願っています...ペアを何らかのデータ構造に保存する必要があることに注意してください(私が a で行ったように)コンストラクター呼び出しの後にフィールドを設定するのではなく、すべてのフィールドでHashMap
a を初期化する場合。LogObject
SSCCEといえば、この回答用に作りました。