All'exec() passa come parametro una stringa che generi con un Filer:
import java.awt.FileDialog;
Filer filer1 = new Filer();
filer1.setMode(FileDialog.LOAD);
filer1.setVisible(true);
dir=filer1.getDirectory();
nomeFile=filer1.getFile();
String path=dir+nomeFile;
Runtime prog = java.lang.Runtime.getRuntime();
Process child = prog.exec(path)
Ogni volta che esegui il programma ti chiede il file.Se vuoi che una volta che il fileè stato scelto non ti venga più chiesto scrivi un file con:
File outputFile = new File(dir+""+nomeFile);
if (outputFile.exists() && !outputFile.canWrite())
{
System.err.println("Can't write output file");
return;
}
writeFile(outputFile,inputString);
public static boolean writeFile(File file, String text)
{
try
{
FileOutputStream outputStream = new FileOutputStream(file.toString());
byte textBytes[] = text.getBytes();
outputStream.write(textBytes, 0, textBytes.length);
}
catch (IOException e)
{
return false;
}
return true;
}
e prima del codice del filer mettici una condizione per vedere se esiste un file con quel nome.Se esiste non esegui il codice del filer e passi subito all'exec(),altrimenti scegli il file.