java长字符串转换为UTF8引发异常
我正在使用GWT,RichTextArea中有一个很长的字符串,我想在发送到服务器之前将其转换为UTF-8:
String content = new String(rta.getText().getBytes(), "UTF-8");
然而,这一条引发了一个例外,说:
[Range Error]: Maximum call stack size exceeded
这是虫子吗
你可以在下面搜索框中键入要查询的问题!
我正在使用GWT,RichTextArea中有一个很长的字符串,我想在发送到服务器之前将其转换为UTF-8:
String content = new String(rta.getText().getBytes(), "UTF-8");
然而,这一条引发了一个例外,说:
[Range Error]: Maximum call stack size exceeded
这是虫子吗
# 1 楼答案
RichTextArea.getText返回一个
String
。“转换为utf-8”的操作不正确。无需将javaString
转换为任何字符编码。您拥有的代码是获取平台默认字符编码中的字节,然后将它们解释为utf-8。充其量,要回到完全相同的String
,这需要大量的工作。在最坏的情况下(比如utf-16le的平台编码),您会完全损坏String
数据