【问题标题】:java.net.UnknownHostException on file:// methodjava.net.UnknownHostException on file:// 方法
【发布时间】:2010-04-21 06:48:52
【问题描述】:
failed to open file file://D/:/dev/test_all.html  JavaException: java.net.UnknownHostException: D

关于为什么会发生这种情况的任何想法?

【问题讨论】:

    标签: java exception url


    【解决方案1】:

    第三个/放错了,文件url用file:///<path>构造

    【讨论】:

    • 在路径前添加一个额外的斜杠解决了这个问题。显然,file:///D/:/dev/test_all.html 被认为是合法的。
    • 如 www.coderanch.com/t/185526/java-developer-SCJD/certification/UnknownHostException 中所述。格式是协议://主机名/文件,因为主机名是空的,所以你最终会得到三个斜杠(协议:///文件)。
    • 简单地放置当前目录文件名没有正确解析。是基于平台的 Java 错误吗?
    • 路径是根据你的应用程序开始的目录来解析的。因此,这在一定程度上取决于您启动应用程序的位置以及您使用的文件指示。但这值得一个单独的问题
    【解决方案2】:

    您的网址格式错误。而不是file://D/:/,你需要file://D:/——驱动器号和冒号之间没有斜线。

    【讨论】:

      【解决方案3】:

      这是我实际使用 XMLParserv2 的解决方案,希望对您有所帮助:

      protected URL createURL(String filename){
      
              URL url = null;
      
              try {
                  url = new URL("file://" + System.getProperty("user.dir") +  File.separator + filename);
              } catch (MalformedURLException e) {
                  System.out.println(e.getMessage());
                  e.printStackTrace();
              }
              return url;
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-10-07
        • 2014-08-11
        • 1970-01-01
        • 2013-12-07
        • 1970-01-01
        • 2014-03-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多