import java.awt.Desktop; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.net.URI; import java.net.URISyntaxException; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.SwingUtilities; public class BrowserOeffnen implements ActionListener { JButton localButt; JButton iNetButt; public BrowserOeffnen() { localButt = new JButton("local"); localButt.addActionListener(this); iNetButt = new JButton("Inet"); iNetButt.addActionListener(this); JFrame frame = new JFrame("Browser \u00f6ffnen"); frame.setLayout(new FlowLayout()); frame.add(localButt); frame.add(iNetButt); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true); } private void ladeINet(String seite) { try { Desktop.getDesktop().browse(new URI(seite)); } catch (IOException e) { e.printStackTrace(); } catch (URISyntaxException e) { e.printStackTrace(); } } private void ladeLocal(String seite) { File tmpIndexFile = null; StringBuffer sb = new StringBuffer(); PrintWriter pWriter = null; try (InputStream is = this.getClass().getClassLoader().getResourceAsStream(seite)) { if (is != null) { int b = 0; while ((b = is.read()) != -1) { sb.append((char) b); } tmpIndexFile = File.createTempFile("javabeginners", ".htm"); tmpIndexFile.deleteOnExit(); if (tmpIndexFile.canWrite()) { pWriter = new PrintWriter(tmpIndexFile); pWriter.write(sb.toString()); pWriter.close(); } else { System.out.println("Tmp-File nicht beschreibbar"); return; } Desktop.getDesktop().browse(tmpIndexFile.toURI()); } else { System.out.println("Laden nicht erfolgreich..."); } } catch (IOException ioe) { ioe.printStackTrace(); } } public void actionPerformed(ActionEvent e) { if (e.getSource() == localButt) ladeLocal("test.htm"); if (e.getSource() == iNetButt) ladeINet("https://www.javabeginners.de"); } public static void main(String[] args) { SwingUtilities.invokeLater(() -> new BrowserOeffnen()); } }