KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > nu > xom > samples > CommentReader


1 /* Copyright 2002, 2003 Elliotte Rusty Harold
2    
3    This library is free software; you can redistribute it and/or modify
4    it under the terms of version 2.1 of the GNU Lesser General Public
5    License as published by the Free Software Foundation.
6    
7    This library is distributed in the hope that it will be useful,
8    but WITHOUT ANY WARRANTY; without even the implied warranty of
9    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10    GNU Lesser General Public License for more details.
11    
12    You should have received a copy of the GNU Lesser General Public
13    License along with this library; if not, write to the
14    Free Software Foundation, Inc., 59 Temple Place, Suite 330,
15    Boston, MA 02111-1307 USA
16    
17    You can contact Elliotte Rusty Harold by sending e-mail to
18    elharo@metalab.unc.edu. Please include the word "XOM" in the
19    subject line. The XOM home page is located at http://www.xom.nu/
20 */

21
22 package nu.xom.samples;
23
24 import java.io.IOException JavaDoc;
25
26 import nu.xom.Builder;
27 import nu.xom.Comment;
28 import nu.xom.Document;
29 import nu.xom.Node;
30 import nu.xom.ParsingException;
31
32 /**
33  * <p>
34  * Demonstrates extracting of comments from an XML document
35  * and reading their contents.
36  * </p>
37  *
38  * @author Elliotte Rusty Harold
39  * @version 1.0
40  *
41  */

42 public class CommentReader {
43
44     public static void list(Node node) {
45         
46         for (int i = 0; i < node.getChildCount(); i++) {
47             Node child = node.getChild(i);
48             if (child instanceof Comment) {
49                 System.out.println(child.toXML());
50             }
51             else {
52                 list(child);
53             }
54         }
55         
56     }
57
58     public static void main(String JavaDoc[] args) {
59   
60         if (args.length <= 0) {
61           System.out.println("Usage: java nu.xom.samples.CommentReader URL");
62           return;
63         }
64         
65         try {
66           Builder parser = new Builder();
67           Document doc = parser.build(args[0]);
68           list(doc);
69         }
70         catch (ParsingException ex) {
71           System.out.println(args[0] + " is not well-formed.");
72           System.out.println(ex.getMessage());
73         }
74         catch (IOException JavaDoc ex) {
75           System.out.println(
76            "Due to an IOException, the parser could not read "
77            + args[0]
78           );
79         }
80   
81     }
82
83 }
Popular Tags