title: Displaying HTML in Swing
body: <p>I am working on a project of sorts to load HTML files from a server and display them in swing.</p>
  
  <pre><code>import java.io.*;
  import java.net.*;
  import java.util.regex.*;
  import javax.swing.*;
  
  
  public class webloader {
      public static void loadcode(){
          URL url = null;
          try {
              url = new URL("web"+File.separator+web.url+File.separator+"index.html");
          } catch (MalformedURLException e) {
              e.printStackTrace();
          }
          URLConnection con = null;
          try {
              con = url.openConnection();
          } catch (IOException e) {
              e.printStackTrace();
          }
          Pattern p = Pattern.compile("text/html;\\s+charset=([^\\s]+)\\s*");
          Matcher m = p.matcher(con.getContentType());
          String charset = m.matches() ? m.group(1) : "ISO-8859-1";
          Reader r = null;
          try {
              r = new InputStreamReader(con.getInputStream(), charset);
          } catch (UnsupportedEncodingException e) {
              e.printStackTrace();
          } catch (IOException e) {
              e.printStackTrace();
          }
          StringBuilder buf = new StringBuilder();
          while (true) {
            int ch = 0;
          try {
              ch = r.read();
          } catch (IOException e) {
              e.printStackTrace();
          }
            if (ch &lt; 0)
              break;
            buf.append((char) ch);
          }
          String str = buf.toString();
          JFrame mainframe = new JFrame(web.url);
          mainframe.setSize(800, 750);
          mainframe.setResizable(false);
          JPanel website = new JPanel();
          JLabel webcontent = new JLabel(str);
          website.add(webcontent);
          mainframe.add(website);
          mainframe.setVisible(true);
      }
  }
  </code></pre>
  
  <p>Error:</p>
  
  <pre><code>Loading test.com
  Exception in thread "AWT-EventQueue-0" java.lang.Error: Unresolved compilation
  roblem:
          Syntax error on token ""web"", delete this token
  
          at webloader.loadcode(webloader.java:11)
          at web$1.actionPerformed(web.java:46)
          at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
          at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
          at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
          at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
          at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sou
  ce)
          at java.awt.Component.processMouseEvent(Unknown Source)
          at javax.swing.JComponent.processMouseEvent(Unknown Source)
          at java.awt.Component.processEvent(Unknown Source)
          at java.awt.Container.processEvent(Unknown Source)
          at java.awt.Component.dispatchEventImpl(Unknown Source)
          at java.awt.Container.dispatchEventImpl(Unknown Source)
          at java.awt.Component.dispatchEvent(Unknown Source)
          at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
          at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
          at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
          at java.awt.Container.dispatchEventImpl(Unknown Source)
          at java.awt.Window.dispatchEventImpl(Unknown Source)
          at java.awt.Component.dispatchEvent(Unknown Source)
          at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
          at java.awt.EventQueue.access$200(Unknown Source)
          at java.awt.EventQueue$3.run(Unknown Source)
          at java.awt.EventQueue$3.run(Unknown Source)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sou
  ce)
          at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sou
  ce)
          at java.awt.EventQueue$4.run(Unknown Source)
          at java.awt.EventQueue$4.run(Unknown Source)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sou
  ce)
          at java.awt.EventQueue.dispatchEvent(Unknown Source)
          at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
          at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
          at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
          at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
          at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
          at java.awt.EventDispatchThread.run(Unknown Source)
  </code></pre>
  
  <p>I am quite new to Java, so if I seem to be stupid or not know what I am doing, that's because I am.</p>