我正在使用 GWT,并且有一个来自 RichTextArea 的非常长的字符串,我想在发送到服务器之前将其转换为 UTF-8:
String content = new String(rta.getText().getBytes(), "UTF-8");
然而,这个抛出了一个异常:
[Range Error]: Maximum call stack size exceeded
这是一个错误吗?
最佳答案
RichTextArea.getText返回一个字符串
。您执行的“转换为 utf-8”操作不正确。不需要将 java String
转换为任何字符编码。您拥有的代码是获取平台默认字符编码中的字节,然后将它们解释为 utf-8。充其量,要返回完全相同的 String
需要进行大量工作。在最坏的情况下(比如 utf-16le 的平台编码),您会完全破坏您的 String
数据。
关于java - 长字符串转换为 UTF-8 抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25171513/