mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-04-19 03:01:48 +08:00
1、DatePattern add DateTimeFormatter
2、FastDateFormat add convert DateTimeFormatter
This commit is contained in:
parent
ef4d444248
commit
34bfea1efd
@ -75,6 +75,10 @@ public class DatePattern {
|
||||
* 标准时间格式 {@link FastDateFormat}:HH:mm:ss
|
||||
*/
|
||||
public static final FastDateFormat NORM_TIME_FORMAT = FastDateFormat.getInstance(NORM_TIME_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:HH:mm:ss
|
||||
*/
|
||||
public static final DateTimeFormatter NORM_TIME_FORMATTER = DateTimeFormatter.ofPattern(NORM_TIME_PATTERN);
|
||||
|
||||
/**
|
||||
* 标准日期时间格式,精确到分:yyyy-MM-dd HH:mm
|
||||
@ -84,6 +88,10 @@ public class DatePattern {
|
||||
* 标准日期时间格式,精确到分 {@link FastDateFormat}:yyyy-MM-dd HH:mm
|
||||
*/
|
||||
public static final FastDateFormat NORM_DATETIME_MINUTE_FORMAT = FastDateFormat.getInstance(NORM_DATETIME_MINUTE_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyy-MM-dd HH:mm
|
||||
*/
|
||||
public static final DateTimeFormatter NORM_DATETIME_MINUTE_FORMATTER = DateTimeFormatter.ofPattern(NORM_DATETIME_MINUTE_PATTERN);
|
||||
|
||||
/**
|
||||
* 标准日期时间格式,精确到秒:yyyy-MM-dd HH:mm:ss
|
||||
@ -106,16 +114,23 @@ public class DatePattern {
|
||||
* 标准日期时间格式,精确到毫秒 {@link FastDateFormat}:yyyy-MM-dd HH:mm:ss.SSS
|
||||
*/
|
||||
public static final FastDateFormat NORM_DATETIME_MS_FORMAT = FastDateFormat.getInstance(NORM_DATETIME_MS_PATTERN);
|
||||
/**
|
||||
* 标准日期时间格式,精确到毫秒 {@link FastDateFormat}:yyyy-MM-dd HH:mm:ss.SSS
|
||||
*/
|
||||
public static final DateTimeFormatter NORM_DATETIME_MS_FORMATTER = DateTimeFormatter.ofPattern(NORM_DATETIME_MS_PATTERN);
|
||||
|
||||
/**
|
||||
* ISO8601日期时间格式,精确到毫秒:yyyy-MM-dd HH:mm:ss,SSS
|
||||
*/
|
||||
public static final String ISO8601_PATTERN = "yyyy-MM-dd HH:mm:ss,SSS";
|
||||
|
||||
/**
|
||||
* ISO8601日期时间格式,精确到毫秒 {@link FastDateFormat}:yyyy-MM-dd HH:mm:ss,SSS
|
||||
*/
|
||||
public static final FastDateFormat ISO8601_FORMAT = FastDateFormat.getInstance(ISO8601_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyy-MM-dd HH:mm:ss,SSS
|
||||
*/
|
||||
public static final DateTimeFormatter ISO8601_FORMATTER = DateTimeFormatter.ofPattern(ISO8601_PATTERN);
|
||||
|
||||
/**
|
||||
* 标准日期格式:yyyy年MM月dd日
|
||||
@ -125,6 +140,10 @@ public class DatePattern {
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyy年MM月dd日
|
||||
*/
|
||||
public static final FastDateFormat CHINESE_DATE_FORMAT = FastDateFormat.getInstance(CHINESE_DATE_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyy年MM月dd日
|
||||
*/
|
||||
public static final DateTimeFormatter CHINESE_DATE_FORMATTER = DateTimeFormatter.ofPattern(ISO8601_PATTERN);
|
||||
|
||||
/**
|
||||
* 标准日期格式:yyyy年MM月dd日 HH时mm分ss秒
|
||||
@ -134,6 +153,10 @@ public class DatePattern {
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyy年MM月dd日HH时mm分ss秒
|
||||
*/
|
||||
public static final FastDateFormat CHINESE_DATE_TIME_FORMAT = FastDateFormat.getInstance(CHINESE_DATE_TIME_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyy年MM月dd日HH时mm分ss秒
|
||||
*/
|
||||
public static final DateTimeFormatter CHINESE_DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern(CHINESE_DATE_TIME_PATTERN);
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------------------- Pure
|
||||
/**
|
||||
@ -144,6 +167,10 @@ public class DatePattern {
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyyMMdd
|
||||
*/
|
||||
public static final FastDateFormat PURE_DATE_FORMAT = FastDateFormat.getInstance(PURE_DATE_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyyMMdd
|
||||
*/
|
||||
public static final DateTimeFormatter PURE_DATE_FORMATTER = DateTimeFormatter.ofPattern(PURE_DATE_PATTERN);
|
||||
|
||||
/**
|
||||
* 标准日期格式:HHmmss
|
||||
@ -153,6 +180,10 @@ public class DatePattern {
|
||||
* 标准日期格式 {@link FastDateFormat}:HHmmss
|
||||
*/
|
||||
public static final FastDateFormat PURE_TIME_FORMAT = FastDateFormat.getInstance(PURE_TIME_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:HHmmss
|
||||
*/
|
||||
public static final DateTimeFormatter PURE_TIME_FORMATTER = DateTimeFormatter.ofPattern(PURE_TIME_PATTERN);
|
||||
|
||||
/**
|
||||
* 标准日期格式:yyyyMMddHHmmss
|
||||
@ -162,6 +193,10 @@ public class DatePattern {
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyyMMddHHmmss
|
||||
*/
|
||||
public static final FastDateFormat PURE_DATETIME_FORMAT = FastDateFormat.getInstance(PURE_DATETIME_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyyMMddHHmmss
|
||||
*/
|
||||
public static final DateTimeFormatter PURE_DATETIME_FORMATTER = DateTimeFormatter.ofPattern(PURE_DATETIME_PATTERN);
|
||||
|
||||
/**
|
||||
* 标准日期格式:yyyyMMddHHmmssSSS
|
||||
@ -171,6 +206,10 @@ public class DatePattern {
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyyMMddHHmmssSSS
|
||||
*/
|
||||
public static final FastDateFormat PURE_DATETIME_MS_FORMAT = FastDateFormat.getInstance(PURE_DATETIME_MS_PATTERN);
|
||||
/**
|
||||
* 标准日期格式 {@link FastDateFormat}:yyyyMMddHHmmssSSS
|
||||
*/
|
||||
public static final DateTimeFormatter PURE_DATETIME_MS_FORMATTER = DateTimeFormatter.ofPattern(PURE_DATETIME_MS_PATTERN);
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------------------- Others
|
||||
/**
|
||||
|
@ -1,10 +1,13 @@
|
||||
package cn.hutool.core.date.format;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
|
||||
import java.text.DateFormat;
|
||||
import java.text.FieldPosition;
|
||||
import java.text.Format;
|
||||
import java.text.ParseException;
|
||||
import java.text.ParsePosition;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.util.Locale;
|
||||
@ -372,6 +375,27 @@ public class FastDateFormat extends Format implements DateParser, DatePrinter {
|
||||
return printer.getMaxLengthEstimate();
|
||||
}
|
||||
|
||||
// convert DateTimeFormatter
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* 便捷获取 DateTimeFormatter
|
||||
* 由于 {@link DatePattern} 很大一部分的格式没有提供 {@link DateTimeFormatter},因此这里提供快捷获取方式
|
||||
* @return DateTimeFormatter
|
||||
* @author dazer & neusoft
|
||||
* @since 5.6.4
|
||||
*/
|
||||
public DateTimeFormatter getDateTimeFormatter() {
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(this.getPattern());
|
||||
if (this.getLocale() != null) {
|
||||
formatter = formatter.withLocale(this.getLocale());
|
||||
}
|
||||
if (this.getTimeZone() != null) {
|
||||
formatter = formatter.withZone(this.getTimeZone().toZoneId());
|
||||
}
|
||||
return formatter;
|
||||
}
|
||||
|
||||
// Basics
|
||||
// -----------------------------------------------------------------------
|
||||
@Override
|
||||
|
Loading…
x
Reference in New Issue
Block a user