Я пытаюсь преобразовать JSON в Java Object (транзакция) и наоборот.
Я продолжаю получать это исключение:
java.text.ParseException: Unparseable date: "Sun Apr 28 02:41:11 IDT 2019"
в этой строке в моем коде ниже:
timeReceived = sdf.parse(json.get("timeReceived").toString());
, хотя я много раз читал описание класса Date и формат I
используется должно соответствовать дате получения.
Был бы признателен за помощь. спасибо!
Мой код:
public Transaction convertJsonToTransaction(JSONObject json){
UUID uuid= UUID.fromString(json.getAsString("uuid"));
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM d HH:mm:ss z
yyyy");
Date timeReceived= null;
try {
timeReceived = sdf.parse(json.get("timeReceived").toString());
} catch (ParseException e) {
e.printStackTrace();
}
String recipient =json.get("recipient").toString();
Date timeSent= null;
try {
timeSent = sdf.parse(json.get("timeSent").toString());
} catch (ParseException e) {
e.printStackTrace();
}
String description=json.getAsString("description");
return new Transaction(uuid, sender, timeReceived, recipient,
timeSent, description);
}
public static void main (String args[]){
Transaction t = new Transaction(UUID.randomUUID(), "ms1", new
Date(), "ms2", new Date(), "flow");
net.minidev.json.JSONObject jo = t.convertTransactionToJson();
System.out.println(((JSONObject) jo).toString());
Transaction tr = t.convertJsonToTransaction(jo);
System.out.println(tr.toString());
}