使用java只读取url中的文本

时间:2016-11-22 11:58:40

标签: java

我一直在尝试执行此程序,但它显示错误,指出urlconnectionreader无法解析。我是编程新手。有人可以帮我这个吗?

这是我的代码:

import java.net.*;
import java.io.*;

public class ReadTextFromUrl {
    public static String getText(String url) throws Exception {
        URL website = new URL(url);
        URLConnection connection = website.openConnection();
        BufferedReader in = new BufferedReader(
                new InputStreamReader(connection.getInputStream()));

        StringBuilder response = new StringBuilder();
        String inputLine;

        while ((inputLine = in.readLine()) != null) 
            response.append(inputLine);

        in.close();

        return response.toString();
    }

    public static void main(String[] args) throws Exception {
        // enter code here
        String content = URLConnectionReader.getText(args[0]);
        System.out.println(content);
    }
}

3 个答案:

答案 0 :(得分:1)

有许多图书馆可以从URL阅读文本, 您可以尝试jsoup库仅读取或提取文本。


import java.io.IOException;

import org.jsoup.Jsoup;

public class ReadTextFromURL {
    public static void main(String[] args) throws IOException {
        String text = Jsoup.connect("https://stackoverflow.com/questions/40741265/read-only-text-from-url-using-java").get().text();
        System.out.println(text);
    }
}

答案 1 :(得分:0)

你需要更多地研究对象。你必须知道这些类是蓝图。你不能使用锯蓝图来看树。你需要锯本身。并且通过从该类创建一个对象,你将拥有锯。所以,当你手中拿着锯时,你可以看到树。从一个类中制作一个对象完全相同。并且使用方法(方法)用实际的锯看到树就像使用方法班级。

让我们认为你有一个名为Saw的类,它有一个名为sawTheTree的方法。

public class Saw {
        public void sawTheTree {
         // do the sawing
          }
            }

现在的蓝图。使用这个锯和你需要的方法:

Saw saw = new Saw();

现在你手里拿着锯了。小伙子去看了树。为此你需要在主方法中使用这个代码,或者你觉得需要锯树。

saw.sawTheTree();

现在锯子会为你看到树。

PS:在您的代码中,您已将getText方法声明为静态,因此您不需要对象创建部分。如果您问为什么再次查看静态语句描述。但是使用非静态您需要创建对象的类的方法。

答案 2 :(得分:0)

在您的情况下,班级名称应为 URLConnectionReader ,或者您可以通过班级名称更改调用函数。

 String content = ReadTextFromUrl.getText(args[0]);