Source Code : How to execute a program from within Java

Java Is Open Source Programming Language You Can Download From Java and Java Libraries From http://www.oracle.com. Click Here to download
We provide this code related to title for you to solve your developing problem easily. Libraries which is import in this program you can download from http://www.oracle.com. Click Here or search from google with Libraries Name you get jar file related it

How to execute a program from within Java

  
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.net.*;
import java.util.*;

/**
 * ExecDemoNS shows how to execute a program from within Java.
 */
public class ExecDemoNS extends JFrame {
  /** The name of the help file. */
  protected final static String HELPFILE = "./help/index.html";

  /** A stack of process objects; each entry tracks one external running process */
  Stack<Process> pStack = new Stack<Process>();

  /** main - instantiate and run */
  public static void main(String av[]) throws Exception {
    String program = av.length == 0 ? "netscape" : av[0];
    new ExecDemoNS(program).setVisible(true);
  }

  /** The path to the binary executable that we will run */
  protected static String program;

  /** Constructor - set up strings and things. */
  public ExecDemoNS(String prog) {
    super("ExecDemo: " + prog);
    String osname = System.getProperty("os.name");
    if (osname == null)
      throw new IllegalArgumentException("no os.name");
    if (prog.equals("netscape"))
      program = // Windows or UNIX only for now, sorry Mac fans
        (osname.toLowerCase().indexOf("windows")!=-1) ?
        "c:/program files/netscape/communicator/program/netscape.exe" :
        "/usr/local/netscape/netscape";
    else
      program = prog;

    Container cp = getContentPane();
    cp.setLayout(new FlowLayout());
    JButton b;
    cp.add(b=new JButton("Exec"));
    b.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        runProg();
      }
    });
    cp.add(b=new JButton("Wait"));
    b.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        doWait();
      }
    });
    cp.add(b=new JButton("Exit"));
    b.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        System.exit(0);
      }
    });
    pack();
  }

  /** Start the help, in its own Thread. */
  public void runProg() {

    new Thread() {
      public void run() {

        try {
          // Get the URL for the Help File
          URL helpURL = this.getClass().getClassLoader().
            getResource(HELPFILE);

          // Start Netscape from the Java Application.

          pStack.push(Runtime.getRuntime().exec(program + " " + helpURL));

        } catch (Exception ex) {
          JOptionPane.showMessageDialog(ExecDemoNS.this,
            "Error" + ex, "Error",
            JOptionPane.ERROR_MESSAGE);
        }
      }
    }.start();

  }

  public void doWait() {
    if (pStack.size() == 0) return;
    try {
      pStack.peek().waitFor();
        // wait for process to complete (does not work as expected for Windows programs)
    } catch (Exception ex) {
      JOptionPane.showMessageDialog(this,
        "Error" + ex, "Error",
        JOptionPane.ERROR_MESSAGE);
    }
    pStack.pop();
  }
}
           
         
    
  

Thank with us