Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Project Name:rtdc_export
- * File Name:DateUtilTest
- * Package Name:com.ly.dc.rtdc.entry.util
- * Date:2014/12/2213:47
- * Copyright (c) 2014, LY.com All Rights Reserved.
- */
- package com.ly.dc.rtdc.entry.util;
- import org.apache.commons.lang3.time.FastDateFormat;
- import org.joda.time.format.DateTimeFormat;
- import org.joda.time.format.DateTimeFormatter;
- import org.joda.time.format.DateTimeFormatterBuilder;
- import org.joda.time.format.DateTimeParser;
- import org.junit.Test;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import java.util.Locale;
- import static org.junit.Assert.assertEquals;
- /**
- * ClassName: DateUtilTest
- * Description:
- * Date: 2014/12/22 13:47
- *
- * @author ymh09658
- * @version V1.0
- * @since JDK 1.6
- */
- public class DateUtilTest {
- private static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";
- private static final String YYYY_MM_DD_HH_MM_SS_SSS = "yyyy-MM-dd HH:mm:ss.SSS";
- private static final String YYYY_MM_DD_KK_MM_SS_A = "yyyy-MM-dd KK:mm:ss a";
- private String a = "2014-12-22 13:48:11";
- private String b = "2014-12-22 13:48:11.112";
- private String c = "2014-12-22 01:48:11 PM";
- private String[] l = { a, b, c };
- @Test
- public void test2() {
- long time = System.currentTimeMillis();
- SimpleDateFormat format = new SimpleDateFormat(YYYY_MM_DD_HH_MM_SS);
- for (int i = 0; i < 10000; i++) {
- try {
- assertEquals(format.parse(l[i % 3]).getHours(), 13);
- } catch (ParseException e) {
- e.printStackTrace();
- }
- }
- System.out.println("2 " + (System.currentTimeMillis() - time));
- }
- @Test
- public void test3() {
- long time = System.currentTimeMillis();
- final DateTimeParser[] parses = { DateTimeFormat.forPattern(YYYY_MM_DD_HH_MM_SS).getParser(),
- DateTimeFormat.forPattern(YYYY_MM_DD_HH_MM_SS_SSS).getParser() };
- for (int i = 0; i < 10000; i++) {
- DateTimeFormatter formatter = new DateTimeFormatterBuilder().append(null, parses).toFormatter();
- String text = l[i % 3];
- Date date;
- try {
- date = formatter.parseDateTime(text).toDate();
- } catch (IllegalArgumentException e) {
- date = DateTimeFormat.forPattern(YYYY_MM_DD_KK_MM_SS_A).withLocale(Locale.US)
- .parseDateTime(text).toDate();
- }
- assertEquals(date.getHours(), 13);
- }
- System.out.println("3 " + (System.currentTimeMillis() - time));
- }
- @Test
- public void test4() {
- long time = System.currentTimeMillis();
- final DateTimeParser[] parses = { DateTimeFormat.forPattern(YYYY_MM_DD_HH_MM_SS).getParser(),
- DateTimeFormat.forPattern(YYYY_MM_DD_HH_MM_SS_SSS).getParser() };
- DateTimeFormatter formatter = new DateTimeFormatterBuilder().append(null, parses).toFormatter();
- DateTimeFormatter withLocale = DateTimeFormat.forPattern(YYYY_MM_DD_KK_MM_SS_A).withLocale(Locale.US);
- for (int i = 0; i < 10000; i++) {
- String text = l[i % 3];
- Date date;
- try {
- date=formatter.parseDateTime(text).toDate();
- } catch (IllegalArgumentException e) {
- date=withLocale.parseDateTime(text).toDate();
- }
- assertEquals(date.getHours(), 13);
- }
- System.out.println("4 " + (System.currentTimeMillis() - time));
- }
- @Test
- public void test5() throws ParseException {
- long time = System.currentTimeMillis();
- for (int i = 0; i < 10000; i++) {
- String text = l[i % 3];
- Date date;
- try {
- date=FastDateFormat.getInstance(YYYY_MM_DD_HH_MM_SS).parse(text);
- } catch (ParseException e) {
- try {
- date=FastDateFormat.getInstance(YYYY_MM_DD_HH_MM_SS_SSS).parse(text);
- } catch (ParseException e1) {
- date=FastDateFormat.getInstance(YYYY_MM_DD_KK_MM_SS_A).parse(text);
- }
- }
- assertEquals(date.getHours(), 13);
- }
- System.out.println("5 " + (System.currentTimeMillis() - time));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement