Package org.aoju.bus.core.date.formatter
Class FastDatePrinter
java.lang.Object
org.aoju.bus.core.date.formatter.AbstractMotd
org.aoju.bus.core.date.formatter.FastDatePrinter
- All Implemented Interfaces:
Serializable,DateMotd,DatePrinter
SimpleDateFormat 的线程安全版本,用于将 Date 格式化输出- Since:
- Java 17+
- Author:
- Kimi Liu
- See Also:
-
Field Summary
Fields inherited from class org.aoju.bus.core.date.formatter.AbstractMotd
locale, pattern, timeZone -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionformat(long millis) 格式化日期表示的毫秒数<B extends Appendable>
Bformat(long millis, B buf) 将毫秒long值格式化为提供的Appendable格式化Calendar对象<B extends Appendable>
B将Calendar对象格式化为提供的Appendable日历上设置的时区仅用于调整时间偏移。使用GregorianCalendar格式化Date<B extends Appendable>
B使用GregorianCalendar将Date对象格式化为提供的Appendable便捷获取 DateTimeFormatter 由于FormatBuilder很大一部分的格式没有提供DateTimeFormatter,因此这里提供快捷获取方式int估算生成的日期字符串长度 实际生成的字符串长度小于或等于此值protected List<org.aoju.bus.core.date.formatter.FastDatePrinter.Rule> 返回给定模式的规则列表protected StringparseToken(String pattern, int[] indexRef) 执行令牌解析protected org.aoju.bus.core.date.formatter.FastDatePrinter.NumberRuleselectNumberRule(int field, int padding) 获取所需填充的适当规则Methods inherited from class org.aoju.bus.core.date.formatter.AbstractMotd
equals, getLocale, getPattern, getTimeZone, hashCode, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.aoju.bus.core.date.formatter.DateMotd
getLocale, getPattern, getTimeZone
-
Constructor Details
-
FastDatePrinter
-
-
Method Details
-
parsePattern
返回给定模式的规则列表- Returns:
- 规则对象的
List - Throws:
IllegalArgumentException- 如果模式无效
-
parseToken
-
selectNumberRule
protected org.aoju.bus.core.date.formatter.FastDatePrinter.NumberRule selectNumberRule(int field, int padding) 获取所需填充的适当规则- Parameters:
field- 得到一个字段的规则padding- 所需的填充- Returns:
- 一个正确填充的新规则
-
format
Description copied from interface:DatePrinter格式化日期表示的毫秒数- Specified by:
formatin interfaceDatePrinter- Parameters:
millis- 日期毫秒数- Returns:
- 格式化的字符串
-
format
Description copied from interface:DatePrinter使用GregorianCalendar格式化Date- Specified by:
formatin interfaceDatePrinter- Parameters:
date- 日期Date- Returns:
- 格式化后的字符串
-
format
Description copied from interface:DatePrinter格式化Calendar对象- Specified by:
formatin interfaceDatePrinter- Parameters:
calendar-Calendar- Returns:
- 格式化后的字符串
-
format
Description copied from interface:DatePrinter将毫秒long值格式化为提供的Appendable- Specified by:
formatin interfaceDatePrinter- Type Parameters:
B- 附加类类型,通常是StringBuilder或StringBuffer- Parameters:
millis- 要格式化的毫秒值buf- 要格式化为的缓冲区- Returns:
- 指定的字符串缓冲区
-
format
Description copied from interface:DatePrinter使用GregorianCalendar将Date对象格式化为提供的Appendable- Specified by:
formatin interfaceDatePrinter- Type Parameters:
B- 附加类类型,通常是StringBuilder或StringBuffer- Parameters:
date- 格式的日期buf- 要格式化为的缓冲区- Returns:
- 指定的字符串缓冲区
-
format
Description copied from interface:DatePrinter将Calendar对象格式化为提供的Appendable日历上设置的时区仅用于调整时间偏移。解析器构造期间指定的时区将确定格式化字符串中使用的时区- Specified by:
formatin interfaceDatePrinter- Type Parameters:
B- 附加类类型,通常是StringBuilder或StringBuffer- Parameters:
calendar- 要格式化的日历buf- 要格式化为的缓冲区- Returns:
- 指定的字符串缓冲区
-
getMaxLengthEstimate
public int getMaxLengthEstimate()估算生成的日期字符串长度 实际生成的字符串长度小于或等于此值- Returns:
- 日期字符串长度
-
getDateTimeFormatter
便捷获取 DateTimeFormatter 由于FormatBuilder很大一部分的格式没有提供DateTimeFormatter,因此这里提供快捷获取方式- Returns:
- DateTimeFormatter
-