📜  Java Java类

📅  最后修改于: 2022-05-13 01:55:05.527000             🧑  作者: Mango

Java Java类

这是一个用于 HTML 表单解码的实用程序类。它只是执行 URLEncoder 类的相反操作,即给定一个编码字符串,它使用指定的方案对其进行解码。一般在servlet编程中使用getParameter()方法访问request的内容时,值在返回前会被自动解码。但有时可能需要显式解码 URL 编码的字符串。
解码字符串时遵循以下步骤:

  1. 字母数字字符和某些特殊字符,例如' * '、' _ '、' - '和' ' 保持不变。
  2. ' + ' 符号被转换为空格。
  3. 所有其他字符都使用指定的编码方案进行解码。 %xy形式的字符串被转换为其编码将导致这三个字符表示的字符。 W3C 建议使用“UTF-8”进行编码。

例如,编码的字符串

u%40geeks+for+geeks

将转换为字符串表示形式,其中 %40 将替换为 @ 符号,+ 符号将转换为空格字符。

u@geeks for geeks

方法 :

    decode() :这是该类提供的一个也是唯一的方法。顾名思义,它返回指定字符串。现在不推荐使用的一种方法只有一个参数,即要解码的字符串。它不允许您指定使用的编码方案并使用平台默认编码方案。另一个版本允许使用编码规范,因此被广泛使用。
    Syntax :public static String decode(String s)- @Deprecated
    Parameters :
    s : encoded string to be decoded
    
    Syntax :public static String decode(String s,
                String enc)
                         throws UnsupportedEncodingException
    Parameters : 
    s : string to be decoded
    enc : encoding to be used
    Throws :
    UnsupportedEncodingException : If the specified encoding is not used
    

Java实现:

// Java program to show decode() method of 
// URLDecoder class
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
  
public class urlDecoder 
{
    public static void main(String[] args) 
                             throws UnsupportedEncodingException 
    {
        // encoded string
        String encodedString = "u%40geeks+for+geeks";
        System.out.println("Encoded String :");
        System.out.println(encodedString);
          
        // decode() method
        System.out.println("Decoded String :");
        System.out.println(URLDecoder.decode(encodedString, "UTF-8"));
    }
}

输出 :

Encoded String :
u%40geeks+for+geeks
Decoded String :
u@geeks for geeks