I need to store a Calendar object as a String and also be able to load a Calendar object from that String. What do I need in my String to accurately represent everything a Calendar holds?

For instance, if I used SimpleDateFormatter and use the pattern `yyyyMMddHHmmssSSSzz`, which is year, month, date, hour, minute, second, millisecond, and timezone, would I be able to reliably recreate the Calendar object from that String?