快速日期格式的替代方案,以实现高效的日期解析?

2022-09-01 16:39:32

很清楚性能和线程问题,我决定使用,直到我意识到这只是格式化,没有解析!SimpleDateFormatFastDateFormatFastDateFormat

有没有一种替代方案,可以开箱即用,而且比它快得多?FastDateFormatSimpleDateFormat

我相信这是最快的之一,所以任何和速度一样快的东西都可以。FastDateFormat

只是好奇,有谁知道为什么不支持解析?它不是严重限制了它的使用吗?FastDateFormat


答案 1

请注意,从commons-lang 3.2开始,FastDateFormat支持解析和打印。

请参见: http://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/time/FastDateFormat.html


答案 2

在最好的猜测中,这是为了保持FastDateFormat...井。。。快速,通过将其限制为仅显示。

Apache Commons有一个功能,但它在内部使用。DateUtilsparseDateSimpleDateFormat

另一种方法是使用JodaTime库。它是处理 、 和 对象的完全替代。DateFormatDateCalendar

JodaTime有一个DateTimeFormatter,可用于从字符串创建DateTime对象(JodaTime相当于Java的对象)。Date

如何使用它的一个例子是这样的:

String strInputDateTime = "2010-12-27"; // An example, this would really come from outside
DateTimeFormatter fmt = DateTimeFormat.forPattern("yyyy-MM-dd");
DateTime dt = fmt.parseDateTime(strInputDateTime);

不过,我不知道这是否真的比 快。SimpleDateFormat


推荐