- - PR -
URLエンコード(JavaScript)をデコード(JSP)する方法
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-04-01 12:00
お世話になります。JSPで開発をしているものです。
JavaScriptでescapeでエンコードした文字列をJSPで取得しデコードするにはどのようにしたらよいのでしょうか? JavaScriptで言うところのunescapeにあたるメソッドはJavaでは何になるのでしょうか? 現在URLDecoder.decodeを利用して String P = ""; P = URLDecoder.decode("%u304A%u306F%u3088%u3046","UTF-8"); としていますが、上手くいかずエラーになってしまいます。 org.apache.jasper.JasperException: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "u5" org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "u5" java.net.URLDecoder.decode(Unknown Source) org.apache.jsp.order.check_jsp._jspService(check_jsp.java:276) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) どなたか、ご教授宜しくお願い致します。 |
|
投稿日時: 2005-04-01 12:28
private メソッドになりますが、
java.util.Properties#loadConvert() が参考になるかと思います。 #もしかしたら Unicode のアンエスケープをする API があるかもしれませんが存じません |
|
投稿日時: 2005-04-01 12:33
% の後には 00 〜 FF までの値が入るのではないですかな?
|
|
投稿日時: 2005-04-01 20:42
escape関数はjava.net.URLDecoderと互換性がありません。
詳しくは http://www.cresc.co.jp/tech/java/URLencoding/JavaScript_URLEncoding.htm を参考にしてください。 |
1