java - 在几行 java 代码中将 url 读取为字符串

标签 java http url

我正在尝试找到与 Groovy 等效的 Java:

String content = "http://www.google.com".toURL().getText();

我想将 URL 中的内容读入字符串。我不想为了这样一个简单的任务而用缓冲流和循环污染我的代码。我查看了 apache 的 HttpClient,但也没有看到一两行实现。

最佳答案

现在自最初的答案被接受以来已经过去了一段时间,有一个更好的方法:

String out = new Scanner(new URL("http://www.google.com").openStream(), "UTF-8").useDelimiter("\\A").next();

如果你想要一个稍微完整的实现,而不是单行,这样做:

public static String readStringFromURL(String requestURL) throws IOException
{
    try (Scanner scanner = new Scanner(new URL(requestURL).openStream(),
            StandardCharsets.UTF_8.toString()))
    {
        scanner.useDelimiter("\\A");
        return scanner.hasNext() ? scanner.next() : "";
    }
}

关于java - 在几行 java 代码中将 url 读取为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16064704/

相关文章:

java - 在 Windows XP 中使用 JNDI 获取用户的组名

java - 覆盖需要双数组的 java 方法

asp.net - 为什么使用 HTTP 动词?

swift - 我们如何等待 HTTP 请求完成?

java - 带点的 Struts2 更好的 URL

java - iText:带有 PdfpTable 的 Pdf 专色

c# - 如何使用 https 创建 HttpListener

php - ZF2 - 从路线生成网址

python - 检测缩短的目的地,或 "tiny"url

java - Hibernate @OneToOne双向导致冗余select查询