1 24 25 package com.jdon.util; 26 27 import java.util.*; 28 import java.text.*; 29 import java.util.Date ; 30 31 39 public class UtilDateTime { 40 41 44 public static java.sql.Timestamp nowTimestamp() { 45 return new java.sql.Timestamp (System.currentTimeMillis()); 46 } 47 48 51 public static java.util.Date nowDate() { 52 return new java.util.Date (); 53 } 54 55 public static java.sql.Timestamp getDayStart(java.sql.Timestamp stamp) { 56 return getDayStart(stamp, 0); 57 } 58 59 public static java.sql.Timestamp getDayStart(java.sql.Timestamp stamp, int daysLater) { 60 Calendar tempCal = Calendar.getInstance(); 61 62 tempCal.setTime(new java.util.Date (stamp.getTime())); 63 tempCal.set(tempCal.get(Calendar.YEAR), tempCal.get(Calendar.MONTH), tempCal.get(Calendar.DAY_OF_MONTH), 0, 0, 0); 64 tempCal.add(Calendar.DAY_OF_MONTH, daysLater); 65 return new java.sql.Timestamp (tempCal.getTime().getTime()); 66 } 67 68 public static java.sql.Timestamp getNextDayStart(java.sql.Timestamp stamp) { 69 return getDayStart(stamp, 1); 70 } 71 72 public static java.sql.Timestamp getDayEnd(java.sql.Timestamp stamp) { 73 return getDayEnd(stamp, 0); 74 } 75 76 public static java.sql.Timestamp getDayEnd(java.sql.Timestamp stamp, int daysLater) { 77 Calendar tempCal = Calendar.getInstance(); 78 79 tempCal.setTime(new java.util.Date (stamp.getTime())); 80 tempCal.set(tempCal.get(Calendar.YEAR), tempCal.get(Calendar.MONTH), tempCal.get(Calendar.DAY_OF_MONTH), 23, 59, 59); 81 tempCal.add(Calendar.DAY_OF_MONTH, daysLater); 82 return new java.sql.Timestamp (tempCal.getTime().getTime()); 83 } 84 85 89 public static java.sql.Date toSqlDate(String date) { 90 java.util.Date newDate = toDate(date, "00:00:00"); 91 92 if (newDate != null) 93 return new java.sql.Date (newDate.getTime()); 94 else 95 return null; 96 } 97 98 104 public static java.sql.Date toSqlDate(String monthStr, String dayStr, String yearStr) { 105 java.util.Date newDate = toDate(monthStr, dayStr, yearStr, "0", "0", "0"); 106 107 if (newDate != null) 108 return new java.sql.Date (newDate.getTime()); 109 else 110 return null; 111 } 112 113 119 public static java.sql.Date toSqlDate(int month, int day, int year) { 120 java.util.Date newDate = toDate(month, day, year, 0, 0, 0); 121 122 if (newDate != null) 123 return new java.sql.Date (newDate.getTime()); 124 else 125 return null; 126 } 127 128 132 public static java.sql.Time toSqlTime(String time) { 133 java.util.Date newDate = toDate("1/1/1970", time); 134 135 if (newDate != null) 136 return new java.sql.Time (newDate.getTime()); 137 else 138 return null; 139 } 140 141 147 public static java.sql.Time toSqlTime(String hourStr, String minuteStr, String secondStr) { 148 java.util.Date newDate = toDate("0", "0", "0", hourStr, minuteStr, secondStr); 149 150 if (newDate != null) 151 return new java.sql.Time (newDate.getTime()); 152 else 153 return null; 154 } 155 156 162 public static java.sql.Time toSqlTime(int hour, int minute, int second) { 163 java.util.Date newDate = toDate(0, 0, 0, hour, minute, second); 164 165 if (newDate != null) 166 return new java.sql.Time (newDate.getTime()); 167 else 168 return null; 169 } 170 171 175 public static java.sql.Timestamp toTimestamp(String dateTime) { 176 java.util.Date newDate = toDate(dateTime); 177 178 if (newDate != null) 179 return new java.sql.Timestamp (newDate.getTime()); 180 else 181 return null; 182 } 183 184 189 public static java.sql.Timestamp toTimestamp(String date, String time) { 190 java.util.Date newDate = toDate(date, time); 191 192 if (newDate != null) 193 return new java.sql.Timestamp (newDate.getTime()); 194 else 195 return null; 196 } 197 198 207 public static java.sql.Timestamp toTimestamp(String monthStr, String dayStr, String yearStr, String hourStr, 208 String minuteStr, String secondStr) { 209 java.util.Date newDate = toDate(monthStr, dayStr, yearStr, hourStr, minuteStr, secondStr); 210 211 if (newDate != null) 212 return new java.sql.Timestamp (newDate.getTime()); 213 else 214 return null; 215 } 216 217 226 public static java.sql.Timestamp toTimestamp(int month, int day, int year, int hour, int minute, int second) { 227 java.util.Date newDate = toDate(month, day, year, hour, minute, second); 228 229 if (newDate != null) 230 return new java.sql.Timestamp (newDate.getTime()); 231 else 232 return null; 233 } 234 235 239 public static java.util.Date toDate(String dateTime) { 240 String date = dateTime.substring(0, dateTime.indexOf(" ")); 242 String time = dateTime.substring(dateTime.indexOf(" ") + 1); 243 244 return toDate(date, time); 245 } 246 247 252 public static java.util.Date toDate(String date, String time) { 253 if (date == null || time == null) return null; 254 String month; 255 String day; 256 String year; 257 String hour; 258 String minute; 259 String second; 260 261 int dateSlash1 = date.indexOf("/"); 262 int dateSlash2 = date.lastIndexOf("/"); 263 264 if (dateSlash1 <= 0 || dateSlash1 == dateSlash2) return null; 265 int timeColon1 = time.indexOf(":"); 266 int timeColon2 = time.lastIndexOf(":"); 267 268 if (timeColon1 <= 0) return null; 269 month = date.substring(0, dateSlash1); 270 day = date.substring(dateSlash1 + 1, dateSlash2); 271 year = date.substring(dateSlash2 + 1); 272 hour = time.substring(0, timeColon1); 273 274 if (timeColon1 == timeColon2) { 275 minute = time.substring(timeColon1 + 1); 276 second = "0"; 277 } else { 278 minute = time.substring(timeColon1 + 1, timeColon2); 279 second = time.substring(timeColon2 + 1); 280 } 281 282 return toDate(month, day, year, hour, minute, second); 283 } 284 285 294 public static java.util.Date toDate(String monthStr, String dayStr, String yearStr, String hourStr, 295 String minuteStr, String secondStr) { 296 int month, day, year, hour, minute, second; 297 298 try { 299 month = Integer.parseInt(monthStr); 300 day = Integer.parseInt(dayStr); 301 year = Integer.parseInt(yearStr); 302 hour = Integer.parseInt(hourStr); 303 minute = Integer.parseInt(minuteStr); 304 second = Integer.parseInt(secondStr); 305 } catch (Exception e) { 306 return null; 307 } 308 return toDate(month, day, year, hour, minute, second); 309 } 310 311 320 public static java.util.Date toDate(int month, int day, int year, int hour, int minute, int second) { 321 Calendar calendar = Calendar.getInstance(); 322 323 try { 324 calendar.set(year, month - 1, day, hour, minute, second); 325 } catch (Exception e) { 326 return null; 327 } 328 return new java.util.Date (calendar.getTime().getTime()); 329 } 330 331 335 public static String toDateString(java.util.Date date) { 336 if (date == null) return ""; 337 Calendar calendar = Calendar.getInstance(); 338 339 calendar.setTime(date); 340 int month = calendar.get(Calendar.MONTH) + 1; 341 int day = calendar.get(Calendar.DAY_OF_MONTH); 342 int year = calendar.get(Calendar.YEAR); 343 String monthStr; 344 String dayStr; 345 String yearStr; 346 347 if (month < 10) { 348 monthStr = "0" + month; 349 } else { 350 monthStr = "" + month; 351 } 352 if (day < 10) { 353 dayStr = "0" + day; 354 } else { 355 dayStr = "" + day; 356 } 357 yearStr = "" + year; 358 return monthStr + "/" + dayStr + "/" + yearStr; 359 } 360 361 365 public static String toTimeString(java.util.Date date) { 366 if (date == null) return ""; 367 Calendar calendar = Calendar.getInstance(); 368 369 calendar.setTime(date); 370 return (toTimeString(calendar.get(Calendar.HOUR_OF_DAY), calendar.get(Calendar.MINUTE), calendar.get(Calendar.SECOND))); 371 } 372 373 379 public static String toTimeString(int hour, int minute, int second) { 380 String hourStr; 381 String minuteStr; 382 String secondStr; 383 384 if (hour < 10) { 385 hourStr = "0" + hour; 386 } else { 387 hourStr = "" + hour; 388 } 389 if (minute < 10) { 390 minuteStr = "0" + minute; 391 } else { 392 minuteStr = "" + minute; 393 } 394 if (second < 10) { 395 secondStr = "0" + second; 396 } else { 397 secondStr = "" + second; 398 } 399 if (second == 0) 400 return hourStr + ":" + minuteStr; 401 else 402 return hourStr + ":" + minuteStr + ":" + secondStr; 403 } 404 405 409 public static String toDateTimeString(java.util.Date date) { 410 if (date == null) return ""; 411 String dateString = toDateString(date); 412 String timeString = toTimeString(date); 413 414 if (dateString != null && timeString != null) 415 return dateString + " " + timeString; 416 else 417 return ""; 418 } 419 420 423 public static java.sql.Timestamp monthBegin() { 424 Calendar mth = Calendar.getInstance(); 425 426 mth.set(Calendar.DAY_OF_MONTH, 1); 427 mth.set(Calendar.HOUR_OF_DAY, 0); 428 mth.set(Calendar.MINUTE, 0); 429 mth.set(Calendar.SECOND, 0); 430 mth.set(Calendar.AM_PM, Calendar.AM); 431 return new java.sql.Timestamp (mth.getTime().getTime()); 432 } 433 434 private static final char[] zeroArray = "0000000000000000".toCharArray(); 435 436 public static final String zeroPadString(String string, int length) { 437 if (string == null || string.length() > length) { 438 return string; 439 } 440 StringBuffer buf = new StringBuffer (length); 441 buf.append(zeroArray, 0, length-string.length()).append(string); 442 return buf.toString(); 443 } 444 445 451 public static final String dateToMillis(long now) { 452 return zeroPadString(Long.toString(now), 15); 453 } 454 455 460 public static String getDateTimeDisp(String datetime) { 461 if ((datetime == null) || (datetime.equals(""))) 462 return ""; 463 464 DateFormat formatter 465 = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM); 466 long datel = Long.parseLong(datetime); 467 return formatter.format(new Date (datel)); 468 469 } 470 } 471 | Popular Tags |