Java-6 style date/tz formatting

This commit is contained in:
Jonathan Wood 2015-06-24 23:35:19 -07:00
parent 9f717384a4
commit 64afb09d96

View file

@ -1,11 +1,14 @@
package com.moandjiezana.toml;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
class DateSerializer implements Serializer {
static final Serializer DATE_SERIALIZER = new DateSerializer();
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:m:ssXXX");
private static final Calendar calendar = new GregorianCalendar();
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:m:ss");
@Override
public boolean canSerialize(Object value) {
@ -15,6 +18,8 @@ class DateSerializer implements Serializer {
@Override
public void serialize(Object value, SerializerContext context) {
context.serialized.append(dateFormat.format(value));
int tzOffset = (calendar.get(Calendar.ZONE_OFFSET) + calendar.get(Calendar.DST_OFFSET)) / (60 * 1000);
context.serialized.append(String.format("%+03d:%02d", tzOffset / 60, tzOffset % 60));
}
@Override