import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.TimeZone;

public class TimeZoneTest {

	public static void main(String[] args) throws ParseException {

		String dateString = "UTC"; 
		String formatString = "z"; 
		SimpleDateFormat simpleDateFormat = new SimpleDateFormat(formatString); 
		Date date = simpleDateFormat.parse(dateString); 

		TimeZone timeZone = TimeZone.getTimeZone("UTC"); 

		long now = System.currentTimeMillis(); 

		Calendar cal = new GregorianCalendar(simpleDateFormat.getTimeZone()); 
		cal.setTime(date); 

		if (timeZone.getOffset(now) == cal.getTimeZone().getOffset(now)) { 
			System.out.println("Works as expected"); 
		} else { 
			System.err.println("The timezone parsed with the simple date format has an offset '" + 
					cal.getTimeZone().getOffset(now) + "', but the timezone offset of TimeZone.getTimeZone('UTC') is '" + timeZone.getOffset(now) + "'"); 
		} 
		System.out.println("TimeZone.getTimeZone('UTC') : " + TimeZone.getTimeZone("UTC")); 
		System.out.println("cal.getTimeZone() : " + cal.getTimeZone()); 
	} 

}

