开发者

Need help to find the filename

开发者 https://www.devze.com 2023-03-17 02:02 出处:网络
I used the following code to run an exe I load through my code. private static String filelocation = \"\";

I used the following code to run an exe I load through my code.

private static String filelocation = "";

.

  load_exe.addActionListener(new ActionListener() {

     @Override
     public void actionPerformed(ActionEvent e) {
        try {
           JFileChooser file_Choose = new JFileChooser();

           file_Choose.showOpenDialog(frame);
           JavaSamp.filelocation = file_Choose.getCurrentDirectory()
                    .toString()
                    + "\\" + file_Choose.getSelectedFile().getName();
           System.out.println("FileLocation" + JavaSamp.filelocation);
        } catch (Exception expobj) {
        开发者_Python百科   // TODO Auto-generated catch block
        }
        Runtime rt = Runtime.getRuntime();

        try {
           System.out.println("File Run Location" + JavaSamp.filelocation);
           proc = rt.exec(JavaSamp.filelocation);

        } catch (IOException e4) {
           e4.printStackTrace();
        } catch (Exception e2) {

        }
     }
  });

My problem is, the above execution of the JavaSamp.filelocation, should have to done many times. First time only I load the exe. Next time I wont. I need to store the exe in a string to run for the successive times. Any suggestion pls


If you want remember the used file just initialize the filelocation with null and test for it. BTW: Storing it as File makes more sense and your way of constructing the absolute path is a bit intricate - compared to just calling getAbsolutePath()

private static File filelocation = null;

private static void test() {
    load_exe.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {
            // Check if file-name to execute has already been set
            if (filelocation != null) {
                try {
                    JFileChooser file_Choose = new JFileChooser();

                    file_Choose.showOpenDialog(frame);
                    JavaSamp.filelocation = file_Choose.getSelectedFile();
                    System.out.println("FileLocation"
                            + JavaSamp.filelocation.getAbsolutePath());
                } catch (Exception expobj) {
                }
            }
            Runtime rt = Runtime.getRuntime();

            try {
                System.out.println("File Run Location"
                        + JavaSamp.filelocation.getAbsolutePath());
                Process proc = rt.exec(JavaSamp.filelocation
                        .getAbsolutePath());

            } catch (IOException e4) {
                e4.printStackTrace();
            }
        }
    };
}
0

精彩评论

暂无评论...
验证码 换一张
取 消