Class Resolver

Direct Known Subclasses:
Calculate

public class Resolver extends Converter
日期解析
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • Resolver

      public Resolver()
  • Method Details

    • parse

      public static DateTime parse(CharSequence date, DateFormat format)
      构建DateTime对象
      Parameters:
      date - Date字符串
      format - 格式化器 SimpleDateFormat
      Returns:
      DateTime对象
    • parse

      public static DateTime parse(CharSequence date, PositionDateParser parser)
      构建DateTime对象
      Parameters:
      date - Date字符串
      parser - 格式化器,FormatBuilder
      Returns:
      DateTime对象
    • parse

      public static DateTime parse(CharSequence date, PositionDateParser parser, boolean lenient)
      构建DateTime对象
      Parameters:
      date - Date字符串
      parser - 格式化器,FormatBuilder
      lenient - 是否宽容模式
      Returns:
      DateTime对象
    • parse

      public static DateTime parse(CharSequence date, DateTimeFormatter formatter)
      构建DateTime对象
      Parameters:
      date - Date字符串
      formatter - 格式化器,DateTimeFormatter
      Returns:
      DateTime对象
    • parse

      public static DateTime parse(CharSequence date, String format)
      将特定格式的日期转换为Date对象
      Parameters:
      date - 特定格式的日期
      format - 格式,例如yyyy-MM-dd
      Returns:
      日期对象
    • parse

      public static DateTime parse(CharSequence date, String format, Locale locale)
      将特定格式的日期转换为Date对象
      Parameters:
      date - 特定格式的日期
      format - 格式,例如yyyy-MM-dd
      locale - 区域信息
      Returns:
      日期对象
    • parse

      public static DateTime parse(String date, String... parsePatterns) throws DateException
      通过给定的日期格式解析日期时间字符串 传入的日期格式会逐个尝试,直到解析成功,返回DateTime对象,否则抛出DateException异常
      Parameters:
      date - 日期时间字符串,非空
      parsePatterns - 需要尝试的日期时间格式数组,非空, 见SimpleDateFormat
      Returns:
      解析后的Date
      Throws:
      IllegalArgumentException - if the date string or pattern array is null
      DateException - if none of the date patterns were suitable
    • parseTime

      public static LocalDateTime parseTime(CharSequence date, String format)
      解析日期时间字符串为LocalDateTime
      Parameters:
      date - 日期时间字符串
      format - 日期格式,类似于yyyy-MM-dd HH:mm:ss,SSS
      Returns:
      LocalDateTime
    • parseTime

      public static LocalDateTime parseTime(CharSequence date, DateTimeFormatter formatter)
      解析日期时间字符串为LocalDateTime,格式支持日期时间、日期、时间 如果formatter为null,则使用DateTimeFormatter.ISO_LOCAL_DATE_TIME
      Parameters:
      date - 日期时间字符串
      formatter - 日期格式化器,预定义的格式见:DateTimeFormatter
      Returns:
      LocalDateTime
    • parseDate

      public static LocalDate parseDate(CharSequence date, String format)
      解析日期字符串为LocalDate
      Parameters:
      date - 日期字符串
      format - 日期格式,类似于yyyy-MM-dd
      Returns:
      LocalDateTime
    • parseDate

      public static LocalDate parseDate(CharSequence date, DateTimeFormatter formatter)
      解析日期时间字符串为LocalDate,格式支持日期
      Parameters:
      date - 日期时间字符串
      formatter - 日期格式化器,预定义的格式见:DateTimeFormatter
      Returns:
      LocalDate
    • parseDateByISO

      public static LocalDate parseDateByISO(CharSequence date)
      解析日期时间字符串为LocalDate,仅支持yyyy-MM-dd'T'HH:mm:ss格式,例如:2007-12-03T10:15:30
      Parameters:
      date - 日期时间字符串
      Returns:
      LocalDate
    • parseTimeByISO

      public static LocalDateTime parseTimeByISO(CharSequence date)
      解析日期时间字符串为LocalDateTime,支持:
      Parameters:
      date - 日期时间字符串
      Returns:
      LocalDateTime
    • normalize

      public static String normalize(CharSequence date)
      标准化日期,默认处理以空格区分的日期时间格式,空格前为日期,空格后为时间: 将以下字符替换为"-"
       "."
       "/"
       "年"
       "月"
       

      将以下字符去除

       "日"
       

      将以下字符替换为":"

       "时"
       "分"
       "秒"
       

      当末位是":"时去除之(不存在毫秒时)

      Parameters:
      date - 日期时间字符串
      Returns:
      格式化后的日期字符串