com.gwtext.client.util
Class DateUtil

java.lang.Object
  extended by com.gwtext.client.util.DateUtil

public class DateUtil
extends java.lang.Object

The date parsing and format syntax is a subset of PHP's date() function, and the formats that are supported will provide results equivalent to their PHP versions. Following is the list of all currently supported formats:

 

Sample date: 'Wed Jan 10 2007 15:05:01 GMT-0600 (Central Standard Time)'

Format Description Example returned values ------ ----------------------------------------------------------------------- ----------------------- d Day of the month, 2 digits with leading zeros 01 to 31 D A short textual representation of the day of the week Mon to Sun j Day of the month without leading zeros 1 to 31 l A full textual representation of the day of the week Sunday to Saturday N ISO-8601 numeric representation of the day of the week 1 (for Monday) through 7 (for Sunday) S English ordinal suffix for the day of the month, 2 characters st, nd, rd or th. Works well with j w Numeric representation of the day of the week 0 (for Sunday) to 6 (for Saturday) z The day of the year (starting from 0) 0 to 364 (365 in leap years) W ISO-8601 week number of year, weeks starting on Monday 01 to 53 F A full textual representation of a month, such as January or March January to December m Numeric representation of a month, with leading zeros 01 to 12 M A short textual representation of a month Jan to Dec n Numeric representation of a month, without leading zeros 1 to 12 t Number of days in the given month 28 to 31 L Whether it's a leap year 1 if it is a leap year, 0 otherwise. o ISO-8601 year number (identical to (Y), but if the ISO week number (W) Examples: 1998 or 2004 belongs to the previous or next year, that year is used instead) Y A full numeric representation of a year, 4 digits Examples: 1999 or 2003 y A two digit representation of a year Examples: 99 or 03 a Lowercase Ante meridiem and Post meridiem am or pm A Uppercase Ante meridiem and Post meridiem AM or PM g 12-hour format of an hour without leading zeros 1 to 12 G 24-hour format of an hour without leading zeros 0 to 23 h 12-hour format of an hour with leading zeros 01 to 12 H 24-hour format of an hour with leading zeros 00 to 23 i Minutes, with leading zeros 00 to 59 s Seconds, with leading zeros 00 to 59 u Milliseconds, with leading zeros 001 to 999 O Difference to Greenwich time (GMT) in hours and minutes Example: +1030 P Difference to Greenwich time (GMT) with colon between hours and minutes Example: -08:00 T Timezone abbreviation of the machine running the code Examples: EST, MDT, PDT ... Z Timezone offset in seconds (negative if west of UTC, positive if east) -43200 to 50400 c ISO 8601 date 2007-04-17T15:19:21+08:00 U Seconds since the Unix Epoch (January 1 1970 00:00:00 GMT) 1193432466 or -2138434463


Nested Class Summary
static class DateUtil.Interval
           
 
Field Summary
static DateUtil.Interval DAY
           
static DateUtil.Interval HOUR
           
static DateUtil.Interval MILLI
           
static DateUtil.Interval MINUTE
           
static DateUtil.Interval MONTH
           
static DateUtil.Interval SECOND
           
static DateUtil.Interval YEAR
           
 
Constructor Summary
DateUtil()
           
 
Method Summary
static java.util.Date add(java.util.Date date, DateUtil.Interval interval, int value)
          Provides a convenient method of performing basic date arithmetic.
static java.util.Date clearTime(java.util.Date date)
          Clears any time information from this date.
static java.util.Date create(double time)
          Allocates a Date object and initializes it to represent the specified number of milliseconds since the standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT.
static java.lang.String format(java.util.Date date, java.lang.String format)
          Formats a date given the supplied format string.
static int getDayOfYear(java.util.Date date)
          Get the numeric day number of the year, adjusted for leap year.
static int getDaysInMonth(java.util.Date date)
          Get the number of days in the current month, adjusted for leap year.
static java.util.Date getFirstDateOfMonth(java.util.Date date)
          Get the first date of this date's month
static int getFirstDayOfMonth(java.util.Date date)
          Get the first day of the current month, adjusted for leap year.
static java.lang.String getGMTOffset(java.util.Date date)
          Get the offset from GMT of the current date.
static java.util.Date getLastDateOfMonth(java.util.Date date)
          Get the last date of this date's month.
static int getLastDayOfMonth(java.util.Date date)
          Get the last day of the current month, adjusted for leap year.
static double getTime(java.util.Date date)
          Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object.
static java.lang.String getTimezone(java.util.Date date)
          Get the timezone abbreviation of the current date.
static int getWeekOfYear(java.util.Date date)
          Get the string representation of the numeric week number of the year.
static boolean isLeapYear(java.util.Date date)
          Whether or not the current date is in a leap year.
static java.util.Date parseDate(java.lang.String input, java.lang.String format)
          Parses the passed string using the specified format.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MILLI

public static DateUtil.Interval MILLI

SECOND

public static DateUtil.Interval SECOND

MINUTE

public static DateUtil.Interval MINUTE

HOUR

public static DateUtil.Interval HOUR

DAY

public static DateUtil.Interval DAY

MONTH

public static DateUtil.Interval MONTH

YEAR

public static DateUtil.Interval YEAR
Constructor Detail

DateUtil

public DateUtil()
Method Detail

create

public static java.util.Date create(double time)
Allocates a Date object and initializes it to represent the specified number of milliseconds since the standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT.

Parameters:
time - the time in milliseconds
Returns:
date

getTime

public static double getTime(java.util.Date date)
Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object.

Parameters:
date - the date
Returns:
time in milliseconds

format

public static java.lang.String format(java.util.Date date,
                                      java.lang.String format)
Formats a date given the supplied format string. You can also use GWT's standard com.google.gwt.i18n.client.DateTimeFormat class.

Parameters:
date - the date
format - the format string
Returns:
the formatted date
See Also:
com.google.gwt.i18n.client.DateTimeFormat

parseDate

public static java.util.Date parseDate(java.lang.String input,
                                       java.lang.String format)
Parses the passed string using the specified format. Note that this function expects dates in normal calendar format, meaning that months are 1-based (1 = January) and not zero-based like in JavaScript dates. Any part of the date format that is not specified will default to the current date value for that part. Time parts can also be specified, but default to 0. Keep in mind that the input date string must precisely match the specified format string or the parse operation will fail.

Parameters:
input - the unparsed date as a string
format - the format string
Returns:
the parsed date

add

public static java.util.Date add(java.util.Date date,
                                 DateUtil.Interval interval,
                                 int value)
Provides a convenient method of performing basic date arithmetic. This method does not modify the Date instance being called - it creates and returns a new Date instance containing the resulting date value.

Parameters:
date - the date
interval - the interval enum
value - the value to add
Returns:
the new Date

clearTime

public static java.util.Date clearTime(java.util.Date date)
Clears any time information from this date.

Parameters:
date - the date
Returns:
the new date

getDayOfYear

public static int getDayOfYear(java.util.Date date)
Get the numeric day number of the year, adjusted for leap year.

Parameters:
date - the date
Returns:
0 through 364 (365 in leap years)

getDaysInMonth

public static int getDaysInMonth(java.util.Date date)
Get the number of days in the current month, adjusted for leap year.

Parameters:
date - the date
Returns:
the number of days in the month

getFirstDateOfMonth

public static java.util.Date getFirstDateOfMonth(java.util.Date date)
Get the first date of this date's month

Parameters:
date - the date
Returns:
the new date

getFirstDayOfMonth

public static int getFirstDayOfMonth(java.util.Date date)
Get the first day of the current month, adjusted for leap year. The returned value is the numeric day index within the week (0-6).

Parameters:
date - the date
Returns:
the day number (0-6)

getGMTOffset

public static java.lang.String getGMTOffset(java.util.Date date)
Get the offset from GMT of the current date.

Parameters:
date - the date
Returns:
the 4-character offset string prefixed with + or - (e.g. '-0600')

getLastDateOfMonth

public static java.util.Date getLastDateOfMonth(java.util.Date date)
Get the last date of this date's month.

Parameters:
date - the date
Returns:
the new date

getLastDayOfMonth

public static int getLastDayOfMonth(java.util.Date date)
Get the last day of the current month, adjusted for leap year. The returned value is the numeric day index within the week (0-6).

Parameters:
date - the date
Returns:
the day number (0-6)

getTimezone

public static java.lang.String getTimezone(java.util.Date date)
Get the timezone abbreviation of the current date.

Parameters:
date - the date
Returns:
the abbreviated timezone name (e.g. 'CST')

getWeekOfYear

public static int getWeekOfYear(java.util.Date date)
Get the string representation of the numeric week number of the year.

Parameters:
date - the date
Returns:
0 through 52

isLeapYear

public static boolean isLeapYear(java.util.Date date)
Whether or not the current date is in a leap year.

Parameters:
date - the date
Returns:
true if date is in a leap year