more bug fixes in dublin core date functions....
authorjohn <john>
Mon, 15 Apr 2002 10:27:44 +0000 (10:27 +0000)
committerjohn <john>
Mon, 15 Apr 2002 10:27:44 +0000 (10:27 +0000)
i really shouldn't be allowed near a terminal after midnight

source/mir/misc/StringUtil.java

index b4dccd1..f0d4017 100755 (executable)
@@ -68,7 +68,7 @@ public final class StringUtil {
        }
 
        /**
-        * Return a http://www.w3.org/TR/NOTE-datetime formatted date (yyyymmddThhmmssTZ)
+        * Return a http://www.w3.org/TR/NOTE-datetime formatted date (yyyy-mm-ddThh:mm:ssTZ)
         * @param theDate
         * @return w3approved datetime
         */
@@ -76,11 +76,15 @@ public final class StringUtil {
        public static final String date2w3DateTime (GregorianCalendar theDate) {
                StringBuffer webdbDate = new StringBuffer();
                webdbDate.append(String.valueOf(theDate.get(Calendar.YEAR)));
+               webdbDate.append("-");
                webdbDate.append(pad2(theDate.get(Calendar.MONTH) + 1));
+               webdbDate.append("-");
                webdbDate.append(pad2(theDate.get(Calendar.DATE)));
                webdbDate.append("T");
                webdbDate.append(pad2(theDate.get(Calendar.HOUR)));
+               webdbDate.append(":");
                webdbDate.append(pad2(theDate.get(Calendar.MINUTE)));
+               webdbDate.append(":");
                webdbDate.append(pad2(theDate.get(Calendar.SECOND)));
                //assumes you are an hour-multiple away from UTC.... 
                int offset=(theDate.get(Calendar.ZONE_OFFSET)/(60*60*1000));
@@ -91,7 +95,7 @@ public final class StringUtil {
                webdbDate.append("+");
                }
                webdbDate.append(pad2(Math.abs(offset)));
-               webdbDate.append("00");
+               webdbDate.append(":00");
                return  webdbDate.toString();
        }
 
@@ -164,19 +168,23 @@ public final class StringUtil {
         
         /**
         * converts string from format: yyyy-mm-dd__hh:mm:ss.dddddd+TZ
-        * to yyyymmddThhmmss+TZ:00 (w3 format for Dublin Core)
+        * to yyyy-mm-ddThhmmss+TZ:00 (w3 format for Dublin Core)
         */
        public static String webdbdateToDCDate(String date) {
                StringBuffer returnDate = new StringBuffer();
                if (date!=null) {
 
                        returnDate.append(date.substring(0,4));
+                       returnDate.append("-");
                        returnDate.append(date.substring(5,7));
+                       returnDate.append("-");
                        returnDate.append(date.substring(8,10));
                        returnDate.append("T");
                        returnDate.append(date.substring(11,13));
+                       returnDate.append(":");
                        returnDate.append(date.substring(14,16));
-                       returnDate.append(date.substring(17,19));
+                       returnDate.append(":");
+                       returnDate.append(date.substring(17,22));
                        returnDate.append(date.substring(20,22));
                        returnDate.append(":00");
                }