问答详情
源自:3-7 Calendar 类的应用

为什么提交的时间跟电脑不一样?

{
    
    public static void main(String[] args) {
        // 创建Calendar对象
        Calendar c = Calendar.getInstance();
        
        // 将Calendar对象转换为Date对象
        Date date = c.getTime();
        
        // 创建SimpleDateFormat对象,指定目标格式
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        
        // 将日期转换为指定格式的字符串
        String now = sdf.format(date);
        System.out.println("当前时间:" + now);
    }
}




运行结果当前时间:2017-02-14 07:47:58

  但是我的电脑的时间是15:53


提问者:qq_旧巷_1 2017-02-14 15:55

个回答

  • ziom
    2017-02-14 16:20:12
    已采纳

    时区的问题,试试加上下面这行:

    ...
    // 创建SimpleDateFormat对象,指定目标格式
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    sdf.setTimeZone(TimeZone.getDefault());
    ...


  • 星鸿
    2017-04-09 20:24:46

    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
    
    public class HelloWorld {
        
        public static void main(String[] args) {
    		// 创建Calendar对象
    		Calendar c = Calendar.getInstance();
            
    		// 将Calendar对象转换为Date对象
    		Date date = c.getTime();
            
    		// 创建SimpleDateFormat对象,指定目标格式
    		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            sdf.setTimeZone(TimeZone.getDefault());
    		// 将日期转换为指定格式的字符串
    		String now = sdf.format(date);
    		System.out.println("当前时间:" + now);
    	}
    }
    报错: error: cannot find symbol
            sdf.setTimeZone(TimeZone.getDefault());
                            ^
      symbol:   variable TimeZone
      location: class HelloWorld
    1 error

  • 慕粉0934262759
    2017-02-14 16:44:22

    你电脑的时间不准确。