Java:无法将URL转换为另一个文件夹中的文件

Java:无法将URL转换为另一个文件夹中的文件,java,file,url,exe,Java,File,Url,Exe,我需要一些Java方面的帮助:我想将URL转换成一个文件(我需要的文件是源文件夹中的一个.exe文件,所以当我想创建一个可运行的Jar文件时,.exe文件就在这个Jar文件中)。然后,当我成功转换此文件时,我想将此.exe文件复制到我以前创建的另一个文件夹中。但我有一些错误: java.nio.file.NoSuchFileException:C:\Users\The5thBluesky\Documents\Neue Workspace\Installertool\bin\Installerto

我需要一些Java方面的帮助:我想将URL转换成一个文件(我需要的文件是源文件夹中的一个.exe文件,所以当我想创建一个可运行的Jar文件时,.exe文件就在这个Jar文件中)。然后,当我成功转换此文件时,我想将此.exe文件复制到我以前创建的另一个文件夹中。但我有一些错误:

java.nio.file.NoSuchFileException:C:\Users\The5thBluesky\Documents\Neue Workspace\Installertool\bin\Installertool\InstallerEXE.exe->C:\Program\Installer\Source

我的全部密码:

package Installerpack;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextPane; 
import javax.swing.JCheckBox;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.io.*;
import java.net.URISyntaxException;
import java.net.URL;

import javax.swing.JOptionPane;

import javax.swing.UIManager;
import java.awt.Color;
import javax.swing.JSlider;
public class Installer extends JFrame {

private JPanel contentPane;
private char Program = 'Z';
URL urlexe = Installer.class.getResource("Steam.exe");


/**
 * Launch the application.
 */
public static void main(String[] args) 
{
    try 
    {
        UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");
    } 
    catch (Throwable e) 
    {
        e.printStackTrace();
    }

    EventQueue.invokeLater(new Runnable() 
    {
        public void run() 
        {
            try 
            {
                Installer frame = new Installer();
                frame.setVisible(true);
            } 
            catch (Exception e) 
            {
                e.printStackTrace();
            }
        }
    });
}



/**
 * Create the frame.
 * @throws Exception 
 */
public Installer() throws Exception {

    setBackground(Color.CYAN);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 600, 564);
    contentPane = new JPanel();
    contentPane.setBackground(new Color(245, 255, 250));
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    setContentPane(contentPane);
    contentPane.setLayout(null);

    InstallableProgram[] InstallablePrograms = new InstallableProgram[10];
    boolean[] bol = new boolean[10];
    String line;
    int index;
    index = 0;
    System.out.println(urlexe);


    try
    {
        String path = ("C:/Programme/Installer/Source");
        url();
        File file = new File("C:/Users/The5thBluesky/Desktop/Path.txt");
        FileReader fr = new FileReader(file);
        BufferedReader br = new BufferedReader(fr);

        // durchlaufen, bis line = null(datei zu ende ist)
        for(InstallableProgram obj : InstallablePrograms)
        {
            obj.path = br.readLine();
            System.out.println(obj.path);
        }
        System.out.println(InstallablePrograms[0].path);
        System.out.println(InstallablePrograms[1].path);
        System.out.println(InstallablePrograms[2].path);
        System.out.println(InstallablePrograms[3].path);
        System.out.println(InstallablePrograms[4].path);
        System.out.println(InstallablePrograms[5].path);
        System.out.println(InstallablePrograms[6].path);
        System.out.println(InstallablePrograms[7].path);
        System.out.println(InstallablePrograms[8].path);
        System.out.println(InstallablePrograms[9].path);



    }

    catch (IOException ext)
    {
        JOptionPane.showMessageDialog(null, "Das ging wohl schief!");
    }


    JTextPane txtpnDiesesProgrammWird = new JTextPane();
    txtpnDiesesProgrammWird.setEditable(false);
    txtpnDiesesProgrammWird.setText("Dieses Programm wird dazu verwendet, um nach einer Auswahl an Programmen, diese zu installieren. W\u00E4hlen sie dazu unten einfach die Programme aus die sie installieren m\u00F6chten und klicken sie dann auf INSTALL.");
    txtpnDiesesProgrammWird.setBounds(37, 12, 460, 58);
    contentPane.add(txtpnDiesesProgrammWird);

    JLabel lblOperaInstall = new JLabel("Opera wird jetzt installiert");
    lblOperaInstall.setVisible(false);
    lblOperaInstall.setBounds(236, 302, 199, 14);
    contentPane.add(lblOperaInstall);

    JLabel lblOriginInstall = new JLabel("Origin wird jetzt installiert");
    lblOriginInstall.setVisible(false);
    lblOriginInstall.setBounds(236, 337, 147, 14);
    contentPane.add(lblOriginInstall);

    JLabel lblTeamspeakWirdJetzt = new JLabel("TeamSpeak wird jetzt installiert");
    lblTeamspeakWirdJetzt.setVisible(false);
    lblTeamspeakWirdJetzt.setBounds(236, 369, 199, 16);
    contentPane.add(lblTeamspeakWirdJetzt);

    JLabel lblWinrarWirdJetzt = new JLabel("WinRAR wird jetzt installiert");
    lblWinrarWirdJetzt.setVisible(false);
    lblWinrarWirdJetzt.setBounds(236, 399, 181, 16);
    contentPane.add(lblWinrarWirdJetzt);

    JLabel lblArduinoIdeWird = new JLabel("Arduino IDE wird jetzt installiert");
    lblArduinoIdeWird.setVisible(false);
    lblArduinoIdeWird.setBounds(236, 268, 168, 16);
    contentPane.add(lblArduinoIdeWird);

    JLabel lblCcleanerWirdJetzt = new JLabel("CCleaner wird jetzt installiert");
    lblCcleanerWirdJetzt.setVisible(false);
    lblCcleanerWirdJetzt.setBounds(236, 239, 199, 16);
    contentPane.add(lblCcleanerWirdJetzt);

    JLabel lblDevcWirdJetzt = new JLabel("Dev-C++ wird jetzt installiert");
    lblDevcWirdJetzt.setVisible(false);
    lblDevcWirdJetzt.setBounds(236, 209, 219, 16);
    contentPane.add(lblDevcWirdJetzt);

    JLabel lblGeogebraWirdJetzt = new JLabel("GeoGebra wird jetzt installiert");
    lblGeogebraWirdJetzt.setVisible(false);
    lblGeogebraWirdJetzt.setBounds(236, 179, 219, 16);
    contentPane.add(lblGeogebraWirdJetzt);

    JLabel lblMicrosoftOffice = new JLabel("Microsoft Office 365 wird jetzt installiert");
    lblMicrosoftOffice.setVisible(false);
    lblMicrosoftOffice.setBounds(236, 149, 273, 16);
    contentPane.add(lblMicrosoftOffice);

    JLabel lblSteamWirdJetzt = new JLabel("Steam wird jetzt installiert");
    lblSteamWirdJetzt.setVisible(false);
    lblSteamWirdJetzt.setBounds(236, 119, 168, 16);
    contentPane.add(lblSteamWirdJetzt);

    JCheckBox checkbxOpera = new JCheckBox("Opera");
    checkbxOpera.setForeground(new Color(0, 0, 0));
    checkbxOpera.setBackground(new Color(0, 0, 0));
    checkbxOpera.addActionListener(new ActionListener() 
    {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxOpera.isSelected())
            {
                lblOperaInstall.setVisible(true);
                Program = '1';
            }
            else
            {
                lblOperaInstall.setVisible(false);
            }
        }

    });
    checkbxOpera.setBounds(37, 298, 97, 23);
    contentPane.add(checkbxOpera);

    JCheckBox checkbxOrigin = new JCheckBox("Origin\r\n");
    checkbxOrigin.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            if (checkbxOrigin.isSelected())
            {
                lblOriginInstall.setVisible(true);
                Program = '2';
            }
            else
            {
                lblOriginInstall.setVisible(false);
            }
        }
    });
    checkbxOrigin.setBounds(37, 333, 97, 23);
    contentPane.add(checkbxOrigin);

    JCheckBox checkbxArduino = new JCheckBox("Arduino IDE");
    checkbxArduino.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxArduino.isSelected())
            {
                lblArduinoIdeWird.setVisible(true);
                Program = '3';
            }
            else
            {
                lblArduinoIdeWird.setVisible(false);
            }
        }
    });
    checkbxArduino.setBounds(37, 268, 104, 18);
    contentPane.add(checkbxArduino);

    JCheckBox checkbxCCleaner = new JCheckBox("CCleaner");
    checkbxCCleaner.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxCCleaner.isSelected())
            {
                lblCcleanerWirdJetzt.setVisible(true);
                Program = '4';
            }
            else
            {
                lblCcleanerWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxCCleaner.setBounds(37, 238, 104, 18);
    contentPane.add(checkbxCCleaner);

    JCheckBox checkbxDevC = new JCheckBox("Dev- C++\r\n");
    checkbxDevC.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxDevC.isSelected())
            {
                lblDevcWirdJetzt.setVisible(true);
                Program = '5';
            }
            else
            {
                lblDevcWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxDevC.setBounds(37, 208, 104, 18);
    contentPane.add(checkbxDevC);

    JCheckBox checkbxGeogebra = new JCheckBox("GeoGebra");
    checkbxGeogebra.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxGeogebra.isSelected())
            {
                lblGeogebraWirdJetzt.setVisible(true);
                Program = '6';
            }
            else
            {
                lblGeogebraWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxGeogebra.setBounds(37, 178, 104, 18);
    contentPane.add(checkbxGeogebra);

    JCheckBox checkbxMicrosoft = new JCheckBox("Microsoft Office 365");
    checkbxMicrosoft.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxMicrosoft.isSelected())
            {
                lblMicrosoftOffice.setVisible(true);
                Program = '7';
            }
            else
            {
                lblMicrosoftOffice.setVisible(false);
            }
        }
    });
    checkbxMicrosoft.setBounds(37, 148, 136, 18);
    contentPane.add(checkbxMicrosoft);

    JCheckBox checkbxSteam = new JCheckBox("Steam");
    checkbxSteam.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxSteam.isSelected())
            {
                lblSteamWirdJetzt.setVisible(true);
                Program = '8';
            }
            else
            {
                lblSteamWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxSteam.setBounds(37, 118, 104, 18);
    contentPane.add(checkbxSteam);

    JCheckBox checkbxTeamspeak = new JCheckBox("Teamspeak");
    checkbxTeamspeak.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxTeamspeak.isSelected())
            {
                lblTeamspeakWirdJetzt.setVisible(true);
                Program = '9';
            }
            else
            {
                lblTeamspeakWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxTeamspeak.setBounds(37, 368, 104, 18);
    contentPane.add(checkbxTeamspeak);

    JCheckBox checkbxWinRAR = new JCheckBox("WinRAR");
    checkbxWinRAR.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxWinRAR.isSelected())
            {
                lblWinrarWirdJetzt.setVisible(true);
                Program = '0';
            }
            else
            {
                lblWinrarWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxWinRAR.setBounds(37, 398, 104, 18);
    contentPane.add(checkbxWinRAR);

    JButton btnNewButton = new JButton("INSTALL");
    btnNewButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) 
        {
            if (checkbxOpera.isSelected())
            {
                try 
                {
                    System.out.println(InstallablePrograms[4].path);
                    Runtime rOp = Runtime.getRuntime();
                    Process rt = rOp.exec(InstallablePrograms[5].path);
                    rt.waitFor();
                    JOptionPane.showMessageDialog(null, "Opera wurde erfolgreich installiert");
                } 
                catch( IOException | InterruptedException ex) 
                {
                    JOptionPane.showMessageDialog(null, "Ein Fehler ist aufgetreten! Möglicherweise " + 
                    "existiert die Datei nicht, oder der eine Pfad ist nicht korrekt");
                }
            }
        }

    });
    btnNewButton.setBounds(414, 465, 147, 39);
    contentPane.add(btnNewButton);



}



private void url() throws InterruptedException, IOException 
{
    File file;
    try { 
          file = new File(urlexe.toURI()); 
          System.out.println(urlexe.getPath());
        Runtime rOp = Runtime.getRuntime();
        Process rt = rOp.exec(urlexe.getPath());
        rt.waitFor();
        } catch(URISyntaxException|IOException e) { 
          file = new File(urlexe.getPath());
          System.out.println(urlexe.getPath());
        Runtime rOp = Runtime.getRuntime();
        Process rt = rOp.exec(urlexe.getPath());
        rt.waitFor();
        } 

    JOptionPane.showMessageDialog(null, "Opera wurde erfolgreich installiert");
}
}

有人能帮我吗?

确保您的路径都存在(源文件和目标目录)。另外,请确保您有足够的权限写入目标目录,并且它不需要管理员权限(或者java是使用管理员权限执行的)。我确信这两个目录都存在,因为我将InstallerEXE.exe复制到了正确的文件夹中,而我要复制.exe文件的另一个文件夹必须在Programstart中创建。当我在copy命令之前创建文件夹时,我会得到一个错误:文件已经存在。。。。我应该有管理员权限,因为我用管理员权限启动eclipse
package Installerpack;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextPane; 
import javax.swing.JCheckBox;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.io.*;
import java.net.URISyntaxException;
import java.net.URL;

import javax.swing.JOptionPane;

import javax.swing.UIManager;
import java.awt.Color;
import javax.swing.JSlider;
public class Installer extends JFrame {

private JPanel contentPane;
private char Program = 'Z';
URL urlexe = Installer.class.getResource("Steam.exe");


/**
 * Launch the application.
 */
public static void main(String[] args) 
{
    try 
    {
        UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");
    } 
    catch (Throwable e) 
    {
        e.printStackTrace();
    }

    EventQueue.invokeLater(new Runnable() 
    {
        public void run() 
        {
            try 
            {
                Installer frame = new Installer();
                frame.setVisible(true);
            } 
            catch (Exception e) 
            {
                e.printStackTrace();
            }
        }
    });
}



/**
 * Create the frame.
 * @throws Exception 
 */
public Installer() throws Exception {

    setBackground(Color.CYAN);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 600, 564);
    contentPane = new JPanel();
    contentPane.setBackground(new Color(245, 255, 250));
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    setContentPane(contentPane);
    contentPane.setLayout(null);

    InstallableProgram[] InstallablePrograms = new InstallableProgram[10];
    boolean[] bol = new boolean[10];
    String line;
    int index;
    index = 0;
    System.out.println(urlexe);


    try
    {
        String path = ("C:/Programme/Installer/Source");
        url();
        File file = new File("C:/Users/The5thBluesky/Desktop/Path.txt");
        FileReader fr = new FileReader(file);
        BufferedReader br = new BufferedReader(fr);

        // durchlaufen, bis line = null(datei zu ende ist)
        for(InstallableProgram obj : InstallablePrograms)
        {
            obj.path = br.readLine();
            System.out.println(obj.path);
        }
        System.out.println(InstallablePrograms[0].path);
        System.out.println(InstallablePrograms[1].path);
        System.out.println(InstallablePrograms[2].path);
        System.out.println(InstallablePrograms[3].path);
        System.out.println(InstallablePrograms[4].path);
        System.out.println(InstallablePrograms[5].path);
        System.out.println(InstallablePrograms[6].path);
        System.out.println(InstallablePrograms[7].path);
        System.out.println(InstallablePrograms[8].path);
        System.out.println(InstallablePrograms[9].path);



    }

    catch (IOException ext)
    {
        JOptionPane.showMessageDialog(null, "Das ging wohl schief!");
    }


    JTextPane txtpnDiesesProgrammWird = new JTextPane();
    txtpnDiesesProgrammWird.setEditable(false);
    txtpnDiesesProgrammWird.setText("Dieses Programm wird dazu verwendet, um nach einer Auswahl an Programmen, diese zu installieren. W\u00E4hlen sie dazu unten einfach die Programme aus die sie installieren m\u00F6chten und klicken sie dann auf INSTALL.");
    txtpnDiesesProgrammWird.setBounds(37, 12, 460, 58);
    contentPane.add(txtpnDiesesProgrammWird);

    JLabel lblOperaInstall = new JLabel("Opera wird jetzt installiert");
    lblOperaInstall.setVisible(false);
    lblOperaInstall.setBounds(236, 302, 199, 14);
    contentPane.add(lblOperaInstall);

    JLabel lblOriginInstall = new JLabel("Origin wird jetzt installiert");
    lblOriginInstall.setVisible(false);
    lblOriginInstall.setBounds(236, 337, 147, 14);
    contentPane.add(lblOriginInstall);

    JLabel lblTeamspeakWirdJetzt = new JLabel("TeamSpeak wird jetzt installiert");
    lblTeamspeakWirdJetzt.setVisible(false);
    lblTeamspeakWirdJetzt.setBounds(236, 369, 199, 16);
    contentPane.add(lblTeamspeakWirdJetzt);

    JLabel lblWinrarWirdJetzt = new JLabel("WinRAR wird jetzt installiert");
    lblWinrarWirdJetzt.setVisible(false);
    lblWinrarWirdJetzt.setBounds(236, 399, 181, 16);
    contentPane.add(lblWinrarWirdJetzt);

    JLabel lblArduinoIdeWird = new JLabel("Arduino IDE wird jetzt installiert");
    lblArduinoIdeWird.setVisible(false);
    lblArduinoIdeWird.setBounds(236, 268, 168, 16);
    contentPane.add(lblArduinoIdeWird);

    JLabel lblCcleanerWirdJetzt = new JLabel("CCleaner wird jetzt installiert");
    lblCcleanerWirdJetzt.setVisible(false);
    lblCcleanerWirdJetzt.setBounds(236, 239, 199, 16);
    contentPane.add(lblCcleanerWirdJetzt);

    JLabel lblDevcWirdJetzt = new JLabel("Dev-C++ wird jetzt installiert");
    lblDevcWirdJetzt.setVisible(false);
    lblDevcWirdJetzt.setBounds(236, 209, 219, 16);
    contentPane.add(lblDevcWirdJetzt);

    JLabel lblGeogebraWirdJetzt = new JLabel("GeoGebra wird jetzt installiert");
    lblGeogebraWirdJetzt.setVisible(false);
    lblGeogebraWirdJetzt.setBounds(236, 179, 219, 16);
    contentPane.add(lblGeogebraWirdJetzt);

    JLabel lblMicrosoftOffice = new JLabel("Microsoft Office 365 wird jetzt installiert");
    lblMicrosoftOffice.setVisible(false);
    lblMicrosoftOffice.setBounds(236, 149, 273, 16);
    contentPane.add(lblMicrosoftOffice);

    JLabel lblSteamWirdJetzt = new JLabel("Steam wird jetzt installiert");
    lblSteamWirdJetzt.setVisible(false);
    lblSteamWirdJetzt.setBounds(236, 119, 168, 16);
    contentPane.add(lblSteamWirdJetzt);

    JCheckBox checkbxOpera = new JCheckBox("Opera");
    checkbxOpera.setForeground(new Color(0, 0, 0));
    checkbxOpera.setBackground(new Color(0, 0, 0));
    checkbxOpera.addActionListener(new ActionListener() 
    {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxOpera.isSelected())
            {
                lblOperaInstall.setVisible(true);
                Program = '1';
            }
            else
            {
                lblOperaInstall.setVisible(false);
            }
        }

    });
    checkbxOpera.setBounds(37, 298, 97, 23);
    contentPane.add(checkbxOpera);

    JCheckBox checkbxOrigin = new JCheckBox("Origin\r\n");
    checkbxOrigin.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            if (checkbxOrigin.isSelected())
            {
                lblOriginInstall.setVisible(true);
                Program = '2';
            }
            else
            {
                lblOriginInstall.setVisible(false);
            }
        }
    });
    checkbxOrigin.setBounds(37, 333, 97, 23);
    contentPane.add(checkbxOrigin);

    JCheckBox checkbxArduino = new JCheckBox("Arduino IDE");
    checkbxArduino.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxArduino.isSelected())
            {
                lblArduinoIdeWird.setVisible(true);
                Program = '3';
            }
            else
            {
                lblArduinoIdeWird.setVisible(false);
            }
        }
    });
    checkbxArduino.setBounds(37, 268, 104, 18);
    contentPane.add(checkbxArduino);

    JCheckBox checkbxCCleaner = new JCheckBox("CCleaner");
    checkbxCCleaner.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxCCleaner.isSelected())
            {
                lblCcleanerWirdJetzt.setVisible(true);
                Program = '4';
            }
            else
            {
                lblCcleanerWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxCCleaner.setBounds(37, 238, 104, 18);
    contentPane.add(checkbxCCleaner);

    JCheckBox checkbxDevC = new JCheckBox("Dev- C++\r\n");
    checkbxDevC.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxDevC.isSelected())
            {
                lblDevcWirdJetzt.setVisible(true);
                Program = '5';
            }
            else
            {
                lblDevcWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxDevC.setBounds(37, 208, 104, 18);
    contentPane.add(checkbxDevC);

    JCheckBox checkbxGeogebra = new JCheckBox("GeoGebra");
    checkbxGeogebra.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxGeogebra.isSelected())
            {
                lblGeogebraWirdJetzt.setVisible(true);
                Program = '6';
            }
            else
            {
                lblGeogebraWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxGeogebra.setBounds(37, 178, 104, 18);
    contentPane.add(checkbxGeogebra);

    JCheckBox checkbxMicrosoft = new JCheckBox("Microsoft Office 365");
    checkbxMicrosoft.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxMicrosoft.isSelected())
            {
                lblMicrosoftOffice.setVisible(true);
                Program = '7';
            }
            else
            {
                lblMicrosoftOffice.setVisible(false);
            }
        }
    });
    checkbxMicrosoft.setBounds(37, 148, 136, 18);
    contentPane.add(checkbxMicrosoft);

    JCheckBox checkbxSteam = new JCheckBox("Steam");
    checkbxSteam.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxSteam.isSelected())
            {
                lblSteamWirdJetzt.setVisible(true);
                Program = '8';
            }
            else
            {
                lblSteamWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxSteam.setBounds(37, 118, 104, 18);
    contentPane.add(checkbxSteam);

    JCheckBox checkbxTeamspeak = new JCheckBox("Teamspeak");
    checkbxTeamspeak.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxTeamspeak.isSelected())
            {
                lblTeamspeakWirdJetzt.setVisible(true);
                Program = '9';
            }
            else
            {
                lblTeamspeakWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxTeamspeak.setBounds(37, 368, 104, 18);
    contentPane.add(checkbxTeamspeak);

    JCheckBox checkbxWinRAR = new JCheckBox("WinRAR");
    checkbxWinRAR.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) 
        {
            if (checkbxWinRAR.isSelected())
            {
                lblWinrarWirdJetzt.setVisible(true);
                Program = '0';
            }
            else
            {
                lblWinrarWirdJetzt.setVisible(false);
            }
        }
    });
    checkbxWinRAR.setBounds(37, 398, 104, 18);
    contentPane.add(checkbxWinRAR);

    JButton btnNewButton = new JButton("INSTALL");
    btnNewButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) 
        {
            if (checkbxOpera.isSelected())
            {
                try 
                {
                    System.out.println(InstallablePrograms[4].path);
                    Runtime rOp = Runtime.getRuntime();
                    Process rt = rOp.exec(InstallablePrograms[5].path);
                    rt.waitFor();
                    JOptionPane.showMessageDialog(null, "Opera wurde erfolgreich installiert");
                } 
                catch( IOException | InterruptedException ex) 
                {
                    JOptionPane.showMessageDialog(null, "Ein Fehler ist aufgetreten! Möglicherweise " + 
                    "existiert die Datei nicht, oder der eine Pfad ist nicht korrekt");
                }
            }
        }

    });
    btnNewButton.setBounds(414, 465, 147, 39);
    contentPane.add(btnNewButton);



}



private void url() throws InterruptedException, IOException 
{
    File file;
    try { 
          file = new File(urlexe.toURI()); 
          System.out.println(urlexe.getPath());
        Runtime rOp = Runtime.getRuntime();
        Process rt = rOp.exec(urlexe.getPath());
        rt.waitFor();
        } catch(URISyntaxException|IOException e) { 
          file = new File(urlexe.getPath());
          System.out.println(urlexe.getPath());
        Runtime rOp = Runtime.getRuntime();
        Process rt = rOp.exec(urlexe.getPath());
        rt.waitFor();
        } 

    JOptionPane.showMessageDialog(null, "Opera wurde erfolgreich installiert");
}
}