java中的URLEncoder encode / URLDecoder解码(Android)

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (11)

我想在应用程序中使用URLEncoder / URLDecoder类(java.net.URLEncoder / URLDecoder),并使用encode(String s,String enc)/ decode(String s,String enc),但我不知道可以是String参数enc的值吗?我想在“x-www-form-urlencoded”MIME内容类型中进行编码/解码。感谢您的帮助。

提问于
用户回答回答于

编码参数是您正在使用的字符编码。For example "UTF-8"

用户回答回答于

首先,您需要将内容类型设置为“x-www-form-urlencoded”。然后,无论您想要编码什么内容,都可以使用“UTF-8”进行编码。

例如:

将内容设置为'x-www-form-urlencoded':

URL url = new URL("http://www.xyz.com/SomeContext/SomeAction"); <br>
URLConnection urlConnection = url.openConnection();<br>
....<br>
....<br>
urlConnection.setRequestProperty("Content-type","application/x-www-form-urlencoded");

或者,如果您使用的是JSP,那么您可以在其上面写入以下内容。

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %><br>
< META http-equiv="Content-Type" content="text/html; charset=UTF-8">


< FORM action="someaction.jsp" enctype="application/x-www-form-urlencoded" name="InputForm" method="POST">

并使用URLEncoder:

String encodedString = URLEncoder.encode("hello","UTF-8");

扫码关注云+社区