「Java」decodeでURL文字列をutf-8でデコードする
構文
public static String decode(String s,String enc)
throws UnsupportedEncodingException
特定のエンコーディング方式を使ってapplication/x-www-form-urlencoded文字列をデコード
パラメータ:
s – デコードするStringenc – サポートされる文字エンコーディングの名前。
戻り値:
新しくデコードされたString
使用例
package com.arkgame.demo;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
public class DecodeDemo {
private static final String pt = "UTF-8";
public static void main(String[] args)
throws UnsupportedEncodingException {
String url = "test%2buser+%E3%83%86%E3%82%B9%E3%83%88";
System.out.println("URLデコードbefore:\n" + url);
// エンコードされたURL文字列をdecode
String result = decodeFunc(url);
System.out.println("URLデコードafter:\n" + result);
}
// 文字列をデコード
public static String decodeFunc(String str)
throws UnsupportedEncodingException {
// 特定のエンコーディング方式を使って
//application/x-www-form-urlencoded文字列をデコードする
String target = URLDecoder.decode(str, pt);
return target;
}
}
結果
URLデコードbefore:
test%2buser+%E3%83%86%E3%82%B9%E3%83%88
URLデコードafter:
test+user テスト