目前通过
SimpleDateFormat("ddMMyy hhmmss").parse(String)
来取得字符串中的日期时间信息,但该信息是0时区的,如何简便地转换成东8区并输出?

解决方案 »

  1.   

    import java.util.*;
    public class Now {        public static void main(String[] args){                Calendar cal=Calendar.getInstance(TimeZone.getTimeZone("EST"));
                    //Calendar cal=Calendar.getInstance(TimeZone.getDefault());
                    String DATE_FORMAT="yyyy-MM-dd HH:mm:ss";
                    java.text.SimpleDateFormat sdf=
                            new java.text.SimpleDateFormat(DATE_FORMAT);
                    sdf.setTimeZone(TimeZone.getTimeZone("EST"));
                    //sdf.setTimeZone(TimeZone.getDefault());
                    System.out.println("Now:"+sdf.format(cal.getTime()));        }
    }
      

  2.   

    public static Date fromDateString(String dateString, String fromFormat)
        {
            GregorianCalendar gc = new GregorianCalendar();
            SimpleDateFormat df = new SimpleDateFormat(fromFormat);
            df.setTimeZone(gc.getTimeZone());
            df.setLenient(false);
            Date date = df.parse(dateString, new ParsePosition(0));
            return date;
        }