/////// LowerIO.java /////// import java.io.*; // for file I/O class LowerIO { public static void doio(RandomAccessFile iofile) { int i; char c; try { while ( (i = iofile.read()) >= 0 ) { c = (char) i; if ( Character.isUpperCase( c) ) { iofile.seek(iofile.getFilePointer()-1); iofile.write(Character.toLowerCase(c)); } } } catch( IOException e ) { JavaSystem.error(e); System.exit(1); } } public static void main (String args[]) { if ( args.length != 1 ) // takes one arg { JavaSystem.err.println( "Usage: LowerIO file"); System.exit(1); } File file = new File(args[0]); if ( file.isFile() && file.canRead() && file.canWrite() ) { try { RandomAccessFile iofile = new RandomAccessFile(file, "rw"); doio(iofile); iofile.close(); } catch ( IOException e ) { JavaSystem.error(e); System.exit(1); } } else { JavaSystem.err.println( "Can't open file for I/O " + args[0]); System.exit(1); } } }