Java を使用して URL コンテンツを文字列に読み取る
プログラミングにおける一般的なニーズは、URL のコンテンツを取得し、それらを URL として保存することです。弦。 Groovy では、このタスクは次のような簡潔な構文によって簡略化されます。
String content = "http://www.google.com".toURL().getText();
ただし、Java で同等の実装を見つけるのはさらに困難になる可能性があります。 Java にはこのタスクに対して複数のオプションが用意されていますが、その多くには複雑なバッファリングとループ構造が含まれます。
簡略化されたアプローチ
幸いなことに、簡潔なソリューションを求める最初の要求以来、 Java では、より単純なアプローチが導入されています。
String out = new Scanner(new URL("http://www.google.com").openStream(), "UTF-8").useDelimiter("\A").next();
この行では、Scanner クラスを利用して、取得したストリームを読み取ります。 URL から取得し、ストリーム全体を単一の文字列として扱います。
拡張実装
必要に応じて、次のようにより完全な実装を作成できます。
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() : ""; } }
このメソッドは URL を入力として受け取り、対応する文字列コンテンツを返します。
以上がJava で URL コンテンツを文字列に読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。