OSDN Git Service

過去ログ取得時に用いる文字列(時間指定)のパースを別クラスに切り出し
authoryukihane <yukihane.feather@gmail.com>
Thu, 11 Aug 2011 02:32:04 +0000 (11:32 +0900)
committeryukihane <yukihane.feather@gmail.com>
Thu, 11 Aug 2011 07:10:15 +0000 (16:10 +0900)
(cherry picked from commit ed1e782c0ae7f9961ccbb06340edfa8cbc1b9062)

frontend/src/saccubus/util/WayBackTimeParser.java [new file with mode: 0644]

diff --git a/frontend/src/saccubus/util/WayBackTimeParser.java b/frontend/src/saccubus/util/WayBackTimeParser.java
new file mode 100644 (file)
index 0000000..b08c9f9
--- /dev/null
@@ -0,0 +1,53 @@
+package saccubus.util;
+
+import java.io.IOException;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+/**
+ *
+ * @author yuki
+ */
+public final class WayBackTimeParser {
+
+    private WayBackTimeParser() {
+    }
+
+    public static String parse(String time) throws IOException {
+        Date date = null;
+        String waybacktime = "0";
+        try {
+            final DateFormat fmt = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
+            date = fmt.parse(time);
+        } catch (ParseException ex2) {
+            date = null;
+        }
+        if (date == null) {
+            try {
+                final DateFormat fmt = new SimpleDateFormat("yyyy/MM/dd HH:mm");
+                date = fmt.parse(time);
+            } catch (ParseException ex3) {
+                date = null;
+            }
+        }
+        if (date != null) {
+            waybacktime = Long.toString(date.getTime() / 1000);
+            System.out.println("ok.(" + date.toString() + "):" + waybacktime);
+        } else {
+            try {
+                long tmp_time = Long.parseLong(time);
+                waybacktime = Long.toString(tmp_time);
+                date = new Date(tmp_time * 1000);
+                System.out.println("ok.(" + date.toString() + "):"
+                        + waybacktime);
+            } catch (NumberFormatException ex4) {
+                System.out.println("ng.");
+                System.out.println("Cannot parse wayback time.");
+                throw new IOException("Cannot parse wayback time.", ex4);
+            }
+        }
+        return waybacktime;
+    }
+}