मेरे पास कई जेसन संदेशों के साथ एक जेसन सरणी है। मैं फिर प्रत्येक जेसन ऑब्जेक्ट को संसाधित करने के लिए जेसन संदेश को पार्स करता हूं। मुझे यह पता लगाने की ज़रूरत है कि एक एकल जेसन ऑब्जेक्ट कैसे लेना है जो विफल रहता है और सभी असफल जेसन ऑब्जेक्ट्स को एक नई फ़ाइल बनाने के लिए किसी अन्य जेसन सरणी में वापस जोड़ता है। मुझे यकीन नहीं है कि किसी जेसन ऑब्जेक्ट को parseText() विधि से सामान्य जेसन संदेश में कैसे परिवर्तित किया जाए या फ़ाइल बनाने के लिए ऑब्जेक्ट्स को वापस जेसन सरणी में कैसे जोड़ा जाए। क्या कोई इस में मेरी मदद कर सकता है?

    Main json file array

    [
      {
        "Account": "1",
        "Name":    "Test1"
      },
      {
        "Account": "2",
        "Name":    "Test2"
      },
      {
        "Account": "3",
        "Name":    "Test3"
      },
      {
        "Account": "4",
        "Name":    "Test4"
      }
    ]  

    String sJson = groovy.json.StringEscapeUtils.unescapeJava(jsonFile.toString());
    jsonResp = new groovy.json.JsonSlurper().parseText(sJson));

    for( int x=0; x < jsonResp?.size(); x++ ) {
        processJson( jsonResp[x] )
    }

    void processJson( Object jsonResp ) {


       If object message fails in this function, need to convert the json object back into a json message
       and append it to a jsonArray to create a new json file.

    }

    This is what the new json file would like if test samples 2 & 4 failed
    [
      {
        "Account": "2",
        "Name":    "Test2"
      },
      {
        "Account": "4",
        "Name":    "Test4"
      }
    ]  
0
user7071176 6 अक्टूबर 2018, 08:29

1 उत्तर

सबसे बढ़िया उत्तर

मुझे अपने प्रश्न का उत्तर मिल गया।

JSONArray jsonArray = new JSONArray();
jsonArray.add(jsonResp);
println jsonArray.toString()
2
user7071176user7071176 6 अक्टूबर 2018, 06:23