从系统加载HTML文件时出现MalformedURLException

时间:2012-05-28 19:50:57

标签: java url jeditorpane malformedurlexception

所以我正在使用浏览器(正当理由)并且我一直在获得java.net.MalformedURLException。我正在尝试将JEditorPane的页面设置为从我的计算机上加载的文件。这是代码:

  public Browser() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setSize(500, 500);
    URLField = new JTextField("Enter the full address of the website:");
    displayWindow = new JEditorPane();
    try {
        homeURL = new URL(getCurrentDirectory() + "/resources/home.html");
        displayWindow.setPage(homeURL);
    } catch (IOException e) {
        e.printStackTrace();
    }
    tabs = new JTabbedPane();
    tabs.addTab("Home", displayWindow);

    add(URLField, BorderLayout.PAGE_START);
    add(displayWindow, BorderLayout.CENTER);
}  

这是我得到的错误:

java.net.MalformedURLException: unknown protocol: x
    at java.net.URL.<init>(Unknown Source)
    at java.net.URL.<init>(Unknown Source)
    at java.net.URL.<init>(Unknown Source)
    at net.sourceforge.whowantsakookie.browser.Browser.<init>(Browser.java:25)
    at net.sourceforge.whowantsakookie.browser.Browser.main(Browser.java:42)

它指的是第25和42行 第25行:

homeURL = new URL(getCurrentDirectory() + "/resources/home.html");

第42行:

Browser browser = new Browser();

提前致谢!

2 个答案:

答案 0 :(得分:2)

  1. 建立File个对象。
  2. 检查它是否存在(完整性检查)。
  3. URL url = file.toURI().toURL();
  4. 请注意,这样做可以确保正确编码文件名/路径中的空格字符等内容。

答案 1 :(得分:0)

在您在JTextField中提供的网址之前,您似乎没有输入字符串'http://'。请检查。