KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > list > Main


1 package list;
2
3 import java.io.File JavaDoc;
4 import java.util.Collection JavaDoc;
5 import java.util.Iterator JavaDoc;
6
7 import org.apache.commons.cli.CommandLine;
8 import org.apache.commons.cli.CommandLineParser;
9 import org.apache.commons.cli.GnuParser;
10 import org.apache.commons.cli.HelpFormatter;
11 import org.apache.commons.cli.Option;
12 import org.apache.commons.cli.OptionBuilder;
13 import org.apache.commons.cli.Options;
14 import org.apache.commons.cli.ParseException;
15
16 public class Main {
17     private static Options getOptions() {
18         Option dir = OptionBuilder.withArgName( "dir" )
19             .hasArg()
20             .withDescription( "list files in given dir" )
21             .create( "dir" );
22         Options options = new Options();
23
24         options.addOption(dir);
25         
26         return options;
27     }
28     
29     public static void main(String JavaDoc[] args) throws Exception JavaDoc {
30       Options options = getOptions();
31       try {
32         
33         CommandLineParser parser = new GnuParser();
34
35         CommandLine line = parser.parse( options, args );
36         File JavaDoc dir = new File JavaDoc(line.getOptionValue("dir", "."));
37         Collection JavaDoc files = ListFile.list(dir);
38         System.out.println("listing files in "+dir);
39         for (Iterator JavaDoc it = files.iterator(); it.hasNext(); ) {
40           System.out.println("\t"+it.next()+"\n");
41         }
42       } catch( ParseException exp ) {
43           // oops, something went wrong
44
System.err.println( "Parsing failed. Reason: " + exp.getMessage() );
45           
46         HelpFormatter formatter = new HelpFormatter();
47         formatter.printHelp( "list", options );
48       }
49     }
50             
51 }
52
Popular Tags