您的位置:

Java时间格式转换

一、时间格式概述

在Java中,日期时间常常需要被格式化为字符串以便于展示或者存储。Java时间表示为“1970年1月1日00:00:00”到现在经过的秒数(即Unix时间戳)。Java提供了SimpleDateFormat类来进行时间格式的处理,主要涉及的格式包括:

  • yyyy-MM-dd:年-月-日
  • yyyy-MM-dd HH:mm:ss:年-月-日 时:分:秒
  • yyyy/MM/dd:年/月/日
  • yyyy/MM/dd HH:mm:ss:年/月/日 时:分:秒
  • E:星期几
  • HH:mm:ss:时:分:秒
  • yyyy-MM-dd HH:mm:ss.SSS:年-月-日 时:分:秒.毫秒

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateFormatDemo {
    public static void main(String[] args) {
        // 根据指定的格式创建SimpleDateFormat对象
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        // 创建Date对象
        Date now = new Date();

        // 格式化日期时间
        String timeStr = sdf.format(now);

        // 输出格式化后的日期时间
        System.out.println("当前时间为:" + timeStr);
    }
}

二、字符串转日期时间

对于已有的时间字符串,我们可以使用SimpleDateFormat类将其转换为Date对象。需要注意的是,时间字符串的格式必须与SimpleDateFormat对象的格式一致,否则会抛出ParseException异常。


import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class StringToDateDemo {
    public static void main(String[] args) throws ParseException {
        // 时间字符串
        String timeStr = "2021-07-01 12:00:00";

        // 根据指定的格式创建SimpleDateFormat对象
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        // 将时间字符串转换为Date对象
        Date date = sdf.parse(timeStr);

        // 输出转换后的Date对象
        System.out.println(date);
    }
}

三、日期时间转字符串

将Date对象转换为时间字符串也十分简单,只需要调用SimpleDateFormat对象的format()方法即可。同样需要注意日期时间的格式。


import java.text.SimpleDateFormat;
import java.util.Date;

public class DateToStringDemo {
    public static void main(String[] args) {
        // 创建Date对象
        Date date = new Date();

        // 根据指定的格式创建SimpleDateFormat对象
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        // 将Date对象转换为时间字符串
        String timeStr = sdf.format(date);

        // 输出转换后的时间字符串
        System.out.println(timeStr);
    }
}

四、总结

以上是Java时间格式转换的基本使用方法,特别需要注意格式化代码的编写,确保日期时间格式的正确性。在Java的日期时间处理中,我们还可以通过Calendar类进行更加灵活的时间处理。日期时间格式的处理对于Java程序的实现和业务逻辑非常重要,希望本文能够帮助您更好地掌握Java时间格式转换。