Mega Code Archive

 
Categories / Java / Swing JFC
 

Use an actual input file to monitor rather than inducing progress manually

/* Java Swing, 2nd Edition By Marc Loy, Robert Eckstein, Dave Wood, James Elliott, Brian Cole ISBN: 0-596-00408-7 Publisher: O'Reilly  */ // ProgressMonitorInputExample.java // Simpilar to the ProgressMonitorExample except that we can now use an // actual input file to monitor rather than inducing progress manually. // The file to load should be passed as a command line argument. // import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import javax.swing.JOptionPane; import javax.swing.ProgressMonitorInputStream; public class ProgressMonitorInputExample {   public ProgressMonitorInputExample(String filename) {     ProgressMonitorInputStream monitor;     try {       monitor = new ProgressMonitorInputStream(null, "Loading "           + filename, new FileInputStream(filename));       while (monitor.available() > 0) {         byte[] data = new byte[38];         monitor.read(data);         System.out.write(data);       }     } catch (FileNotFoundException e) {       JOptionPane.showMessageDialog(null, "Unable to find file: "           + filename, "Error", JOptionPane.ERROR_MESSAGE);     } catch (IOException e) {       ;     }   }   public static void main(String args[]) {     new ProgressMonitorInputExample(args[0]);   } }