2012-05-07 7 views
0

idKeys1を解析し、idKeys1から属性ID(Pds AttributeId)と属性値(value)を取得します。私はそれがPDSAttributeのリストであるので、それを解析する最良の方法は何か分かりません。 idKeys1のJavaのオブジェクトリストを解析する方法

List<PdsAttribute> idKeys1 = m_pdssmartclient.release(PersistenceEnum.COMMIT, false); 
Iterator<PdsAttribute> i = idKeys1.iterator(); 
    while (i.hasNext()) { 
        String parse = String.valueOf(i.next()); 
        System.out.println(i.next()); 
         } 

サンプル出力は次のとおりです。 -

[Pds Attribute: 
Pds AttributeId = 20000 
value = 0 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 20002 
value = -1 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 20004 
value = -9223372036854775808 
Attribute Status = 
Status Code = 0 
Status = SUCCESS 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 248 
value = 1906e3551370af60d5b48854fffffffe 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 330 
value = null 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 202 
value = 1906e1611370af60d5b48854ffffffff 
Attribute Status = 
Status Code = 0 
Status = SUCCESS 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 331 
value = null 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 347 
value = 1906e5a11370af60d5b48854fffffffd 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 332 
value = 4fa813bc.0.1.8.9.5.0.1 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 12 
value = 1002491107 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

, Pds Attribute: 
Pds AttributeId = 333 
value = 4fa813bc.0.1.7.8.0.0.1 
Attribute Status = 
Status Code = 0 
Status = NOT_PROCESSED 
Status message = null 

] 
+0

'PdsAttribute'何を?に変更しますか – Gabe

+0

私のコードでは、カスタムタイプのクラスです。だから基本的に私はidKeys1を解析する必要があり、idKeys1のサンプル出力は私の質問で与えられます。 – AKIWEB

+0

カスタムタイプの解析方法を教えてください。私たちはあなたよりもどのように優れていると思いますか? – Gabe

答えて

0

ので、いただきました!もちろんの

 while (i.hasNext()) { 
      PdsAttribute attr = (PdsAttribute) (i.next()); 
      String attrId = String.valueOf(attr.getAttributeId); 
      String attrValue = String.valueOf(attr.getValue()); 
     } 

これと間違っている、あなたはPdsAttributeクラスのPdsAttributeIdと価値のための適切なアクセサを持っていると仮定し。そうでない場合は、メンバーをカプセル化するためにいくつか追加することを検討する必要があります。

+0

3行すべてに余分な括弧があります。投稿する前にあなたが書いたものを確認してください。 –

+0

うん、私は2つでそれらを持っていた、私は最初にそれらを追加するつもりだったときに私は誤って2番目の行にそれらを追加する必要があります。 – Jeshurun

0

反復で、PdsAttributeIdvaluePdsAttributeクラスのフィールドであり、それはそのフィールドに定義されたsetterメソッドを持っている場合は、次の

while (i.hasNext()) { 
    PdsAttribute pdsAttribute = (PdsAttribute) i.next(); 
    String pdsAttributeId = String.valueOf(pdsAttribute.getPdsAttributeId()); 
    String pdsAttributeValue = String.valueOf(pdsAttribute.getValue()); 

    // now use these values as required 
} // while 
関連する問題