У меня есть объект JSON, подобный следующему:
{
"shippingLines": [{
"carrier": "NZ Post",
"price": {
"amount": 5.50,
"currency": "NZD"
}
}],
"taxAmount": {
"amount": 5.325,
"currency": "NZD"
},
"reference": "INV000045",
"totalAmount": {
"amount": 35.5,
"currency": "NZD"
},
"returnUrls": {
"successUrl": "http://yourserver/success",
"failUrl": "http://yourserver/fail",
"callbackUrl": "http://yourserver/fail-safe-callback"
}
}
Я хочу удалить из него все форматирование JSON (пробелы, запятые, скобки, скобки, кавычки, двоеточие) и создать вывод, подобный следующему:
shippingLinescarrierNZPostpriceamount5.50currencyNZDtaxAmountamount5.325currencyNZDreferenceINV000045totalAmountamount35.5currencyNZDreturnUrlssuccessUrlhttp://yourserver.com/successfailUrlhttp://.yourserver.com/failcallbackUrlhttp://yourserver.com/fail-safe-callback
, поэтому я попробовал набор replaceAll()
, как показано ниже:
String json = objectMapper.writeValueAsString(<Json Class here>); // using Jackson
json.replaceAll("\"", "")
.replaceAll("\\{","")
.replaceAll("\\}","")
.replaceAll("\\[","")
.replaceAll("\\]","")
.replaceAll(":","")
.replaceAll(",","")
.replaceAll(" ","");
Но это также заменило "двоеточие" в URL ( http: //.. .) В объекте returnUrls
.Есть ли лучший способ добиться этого?
Примечание: я на Java 7 .