OSDN Git Service

xerces.jar を利用しない方式に書き換え
authorhayashi <hayashi.yuu@gmail.com>
Fri, 3 Nov 2017 00:06:33 +0000 (09:06 +0900)
committerhayashi <hayashi.yuu@gmail.com>
Fri, 3 Nov 2017 00:06:33 +0000 (09:06 +0900)
src/jp/co/areaweb/tools/command/ReadXML.java

index 2427c3b..266154b 100644 (file)
@@ -1,22 +1,40 @@
 package jp.co.areaweb.tools.command;\r
-import org.apache.xerces.parsers.DOMParser;\r
+import java.io.IOException;\r
+import javax.xml.parsers.DocumentBuilderFactory;\r
+import javax.xml.parsers.DocumentBuilder;\r
+import javax.xml.parsers.ParserConfigurationException;\r
 \r
 /**\r
  * 指定されたファイルが整形式XML文書であるかどうかをしらべる。\r
- * exp) java -cp xerces.jar jp.co.areaweb.tools.command.ReadXML build.xml\r
+ * exp) java -cp jp.co.areaweb.tools.command.ReadXML build.xml\r
  * @author Hayashi,Yuu\r
  * @since      2005/01/15\r
  */\r
 public class ReadXML {\r
-       public static void main(String[] argv) {\r
-               try {\r
-                       DOMParser document = new DOMParser();\r
-                       document.parse(argv[0]);\r
-                       System.out.println("整形式XML文書です");\r
-               }\r
-               catch (Exception e) {\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
+    public static void main(String[] argv) {\r
+        try {\r
+            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();\r
+            factory.setValidating(true);\r
+            DocumentBuilder builder = factory.newDocumentBuilder();\r
+            builder.parse(argv[0]);\r
+            System.out.println("整形式XML文書です");\r
+        }\r
+        catch (ParserConfigurationException e) {\r
+            System.out.println("[内部エラー]要求された構成を満たす DocumentBuilder を生成できない");\r
+            e.printStackTrace();\r
+        }\r
+        catch (IOException e) {\r
+            System.out.println("入出力エラーが発生");\r
+            e.printStackTrace();\r
+        }\r
+        catch (org.xml.sax.SAXException e) {\r
+            System.out.println("構文解析エラーが発生");\r
+            e.printStackTrace();\r
+        }\r
+        catch (IllegalArgumentException e) {\r
+            System.out.println("入力ファイルが存在しません");\r
+            e.printStackTrace();\r
+        }\r
+    }\r
 \r
 }\r