将输入值发送为utf-8? (Jsoup)

时间:2017-11-24 04:59:49

标签: java utf-8 jsoup

我发现了这个:<form action="https://www.quadrigacx.com/authenticate" class="form-horizontal" role="form" method="post" accept-charset="utf-8"> 我假设accept-charset="utf-8"意味着我必须将输入值转换为utf-8。如果是这样的话,我该怎么做?我试过了:                 String gcText = new String(googleCode.getText().getBytes("ISO-8859-1"),"UTF-8");String ecText = new String(emailCode.getText().getBytes("ISO-8859-1"),"UTF-8");但它不起作用。感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:1)

你好请试试这个

String gcText = new String(googleCode.getText().getBytes("UTF-8"),"UTF-8");
String ecText = new String(emailCode.getText().getBytes("UTF-8"),"UTF-8");

字符串不需要编码。它只是一系列Unicode字符。

如果要将String转换为字节序列,则需要进行编码。您选择的字符集(UTF-8,cp1255等)确定字符 - >字节映射。请注意,字符不一定会转换为单个字节。在大多数字符集中,大多数Unicode字符都被转换为至少两个字节。

字符串的编码通过以下方式执行:

 String s1 = "some text";
 byte[] bytes = s1.getBytes("UTF-8"); // Charset to encode into

当你有一个字节序列并且你想把它们变成一个字符串时,你需要解码。当你需要再次指定最初编码的字符集的字符集时(否则你最终会得到garblеdtеxt)。 解码:

String s2 = new String(bytes, "UTF-8"); // Charset with which bytes were encoded