Java では、URL にエンコードされた特殊文字が含まれる状況が発生することがあります。これらのエンコードされた文字は、「:」や「/」などの特殊文字が URL の解釈を妨げないように特定の形式を使用します。これらのエンコードされた文字をデコードして元の URL を取得するには、特定のデコード プロセスを利用する必要があります。
Java には、エンコードされた URL を簡単にデコードできる URLDecoder という便利なクラスが用意されています。 URLDecoder の使用方法を示すコード例を次に示します。
import java.net.URLDecoder; import java.nio.charset.StandardCharsets; // ... String encodedUrl = "https%3A%2F%2Fmywebsite%2Fdocs%2Fenglish%2Fsite%2Fmybook.do%3Frequest_type%3D%26type%3Dprivate"; try { String decodedUrl = URLDecoder.decode(encodedUrl, StandardCharsets.UTF_8.name()); System.out.println("Decoded URL: " + decodedUrl); } catch (UnsupportedEncodingException e) { // not going to happen - value came from JDK's own StandardCharsets }
Java 10 以降、URLDecoder クラスは Charset の直接指定をサポートします。その結果、コードをさらに簡素化できます。
import java.net.URLDecoder; import java.nio.charset.StandardCharsets; // ... String encodedUrl = "https%3A%2F%2Fmywebsite%2Fdocs%2Fenglish%2Fsite%2Fmybook.do%3Frequest_type%3D%26type%3Dprivate"; String decodedUrl = URLDecoder.decode(encodedUrl, StandardCharsets.UTF_8); System.out.println("Decoded URL: " + decodedUrl);
Java でエンコードされた URL をデコードするのは、URLDecoder クラスを使用するのが簡単です。 URL エンコードの概念を理解し、提供されているツールを活用すると、エンコードされた URL を元の形式に簡単に変換でき、Java アプリケーションでの URL の操作が容易になります。
以上がURLDecoder を使用して Java でエンコードされた URL をデコードする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。