1 16 package com.blandware.atleap.common.util; 17 18 import sun.text.resources.LocaleData; 19 20 import java.text.DateFormat ; 21 import java.text.ParseException ; 22 import java.util.Date ; 23 import java.util.Locale ; 24 import java.util.ResourceBundle ; 25 import java.util.HashMap ; 26 27 28 39 public class DateUtil { 40 42 protected static String datePattern = "MM/dd/yyyy"; 43 protected static HashMap patterns = new HashMap (); 44 45 46 48 57 public static final String formatDate(Date date, Locale locale, int dateStyle) { 58 DateFormat formatter = DateFormat.getDateInstance(dateStyle, locale); 59 return formatter.format(date); 60 } 61 62 71 public static final String formatDate(Date date, Locale locale) { 72 return formatDate(date, locale, DateFormat.MEDIUM); 73 } 74 75 85 public static final Date parseDate(String source, Locale locale, int dateStyle) throws ParseException { 86 DateFormat formatter = DateFormat.getDateInstance(dateStyle, locale); 87 return formatter.parse(source); 88 } 89 90 100 public static final Date parseDate(String source, Locale locale) throws ParseException { 101 return parseDate(source, locale, DateFormat.MEDIUM); 102 } 103 104 105 114 public static final String formatTime(Date time, Locale locale, int timeStyle) { 115 DateFormat formatter = DateFormat.getTimeInstance(timeStyle, locale); 116 return formatter.format(time); 117 } 118 119 128 public static final String formatTime(Date time, Locale locale) { 129 return formatTime(time, locale, DateFormat.MEDIUM); 130 } 131 132 142 public static final Date parseTime(String source, Locale locale, int timeStyle) throws ParseException { 143 DateFormat formatter = DateFormat.getTimeInstance(timeStyle, locale); 144 return formatter.parse(source); 145 } 146 147 157 public static final Date parseTime(String source, Locale locale) throws ParseException { 158 return parseTime(source, locale, DateFormat.MEDIUM); 159 } 160 161 171 public static final String formatDateTime(Date date, Locale locale, int dateStyle, int timeStyle) { 172 DateFormat formatter = DateFormat.getDateTimeInstance(dateStyle, timeStyle, locale); 173 return formatter.format(date); 174 } 175 176 185 public static final String formatDateTime(Date date, Locale locale) { 186 return formatDateTime(date, locale, DateFormat.MEDIUM, DateFormat.MEDIUM); 187 } 188 189 200 public static final Date parseDateTime(String source, Locale locale, int dateStyle, int timeStyle) throws ParseException { 201 DateFormat formatter = DateFormat.getDateTimeInstance(dateStyle, timeStyle, locale); 202 return formatter.parse(source); 203 } 204 205 215 public static final Date parseDateTime(String source, Locale locale) throws ParseException { 216 return parseDateTime(source, locale, DateFormat.MEDIUM, DateFormat.MEDIUM); 217 } 218 219 224 public static String getDatePattern() { 225 return datePattern; 226 } 227 228 235 public static String getDatePattern(Locale locale, int dateStyle) { 236 String [] dateTimePatterns = (String [])patterns.get(locale); 237 if (dateTimePatterns == null) { 238 ResourceBundle r = LocaleData.getLocaleElements(locale); 239 dateTimePatterns = r.getStringArray("DateTimePatterns"); 240 patterns.put(locale, dateTimePatterns); 241 } 242 return dateTimePatterns[dateStyle + 4]; 243 } 244 245 252 public static String getDatePattern(Locale locale) { 253 return getDatePattern(locale, DateFormat.MEDIUM); 254 } 255 256 257 } 258 | Popular Tags |