我发现了这个:<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");
但它不起作用。感谢任何帮助,谢谢!
答案 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