无法读取数据

时间:2017-06-10 23:53:22

标签: java inputstream java-io

我正在尝试阅读我也可以访问的特定网址的内容。我遇到了问题。所以我刚开始使用here

中的基本示例

我正面临着ConnectionException。

public class UrlReader {
    public static void main(String[] args) throws Exception {

            System.setProperty("http.proxyHost","http://www.oracle.com/");
            System.setProperty("http.proxyPort", "8081");

        Authenticator.setDefault(new Authenticator() {
            protected PasswordAuthentication getPasswordAuthentication() {

                return new PasswordAuthentication("doaminName\\username","password".toCharArray());
            }
        });

        URL url = new URL("http://www.oracle.com/");
        URLConnection con = url.openConnection();

        BufferedReader in = new BufferedReader(new InputStreamReader(
                con.getInputStream()));

        // Read it ...
        String inputLine;
        while ((inputLine = in.readLine()) != null)
            System.out.println(inputLine);

        in.close();


       /* URL oracle = new URL("http://www.oracle.com/");
        BufferedReader in = new BufferedReader(
                new InputStreamReader(oracle.openStream()));

        String inputLine;
        while ((inputLine = in.readLine()) != null)
            System.out.println(inputLine);
        in.close();*/
    }
}

例外:

Exception in thread "main" java.net.ConnectException: Connection refused: connect
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)

我已经按照一些在线链接来解决它,但没有成功。 有没有人在使用工作笔记本电脑工作时遇到这类问题。我想连接到某个URL并使用java从该URL读取内容。

1 个答案:

答案 0 :(得分:0)

System.setProperty("http.proxyHost","http://www.oracle.com/");
System.setProperty("http.proxyPort", "8081");

Oracle不在端口8081上提供HTTP代理服务,或者可能根本不在外部世界提供HTTP代理服务。这两行代码毫无意义,特别是当您的目标URL也是www.oracle.com时。删除它们。