I\'m trying to convert a long timestamp that is UTC to Eastern Standard Time and am totally lost. Any hints would be great!
Time format should be : 11/4/03 8:14 PM
Under the hood Java keeps date value in UTC milliseconds so I think only way to shift value is by manipulating these millies e.g.
private void getShiftedDate(Date date, TimeZone targetZone) {
    long sourceMillies = TimeUnit.MILLISECONDS.toMillis(TimeZone.getDefault().getRawOffset());
    long targetMillies = TimeUnit.MILLISECONDS.toMillis(targetZone.getRawOffset());
    long newMillies = date.getTime() + (targetMillies - sourceMillies);
    Date shiftedDate = new Date(newMillies);
    System.out.println("shifted => " + shiftedDate);
}
However, toString() of shiftedDate will still print default/source time zone string.