1 package net.nutch.net.protocols; 2 3 import java.util.Calendar ; 4 import java.util.Date ; 5 import java.util.HashMap ; 6 import java.util.Locale ; 7 import java.util.TimeZone ; 8 import java.text.SimpleDateFormat ; 9 import java.text.ParseException ; 10 11 18 public class HttpDateFormat { 19 20 protected static SimpleDateFormat format = 21 new SimpleDateFormat ("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US); 22 23 26 static { 27 format.setTimeZone(TimeZone.getTimeZone("GMT")); 28 } 29 30 33 36 54 57 public static String toString(Date date) { 58 String string; 59 synchronized (format) { 60 string = format.format(date); 61 } 62 return string; 63 } 64 65 public static String toString(Calendar cal) { 66 String string; 67 synchronized (format) { 68 string = format.format(cal.getTime()); 69 } 70 return string; 71 } 72 73 public static String toString(long time) { 74 String string; 75 synchronized (format) { 76 string = format.format(new Date (time)); 77 } 78 return string; 79 } 80 81 public static Date toDate(String dateString) throws ParseException { 82 Date date; 83 synchronized (format) { 84 date = format.parse(dateString); 85 } 86 return date; 87 } 88 89 public static long toLong(String dateString) throws ParseException { 90 long time; 91 synchronized (format) { 92 time = format.parse(dateString).getTime(); 93 } 94 return time; 95 } 96 97 public static void main(String [] args) throws Exception { 98 HttpDateFormat format = new HttpDateFormat(); 99 100 Date now = new Date (System.currentTimeMillis()); 101 102 String string = format.toString(now); 103 104 long time = format.toLong(string); 105 106 System.out.println(string); 107 System.out.println(format.toString(time)); 108 } 109 110 } 111 | Popular Tags |