// // read from file, default to standard input // write to file, default to standard output // // prints one word per line // import java.io.BufferedReader; import java.io.FileReader; import java.io.FileWriter; import java.io.InputStreamReader; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.util.StringTokenizer; public class Echo { public static void main( String[] args ) throws IOException { String delimiters = " .?!()[]{}|@#$%^*+-<=>/&\\,;:_\'\"\t\n\r"; BufferedReader inputFile = new BufferedReader( new InputStreamReader( System.in ) ); PrintWriter outputFile = new PrintWriter( new OutputStreamWriter( System.out ) ); if (args.length > 0) inputFile = new BufferedReader( new FileReader( args[0] ) ); if (args.length > 1) outputFile = new PrintWriter( new FileWriter( args[1] ) ); String line = null; while ( true ) { line = inputFile.readLine(); if ( line == null ) break; StringTokenizer tokens = new StringTokenizer( line, delimiters ); while ( tokens.hasMoreElements() ) { String word = (String) tokens.nextElement(); outputFile.println( word ); } } inputFile.close(); outputFile.close(); } }