java - 长字符串转换为 UTF-8 抛出异常

标签 java gwt

我正在使用 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/

相关文章:

java - 使用文件服务 URL 从 blobstore 中删除文件

GWT 应用程序在开发模式下运行但无法编译

javascript - 是否有可能知道 HTTPRequest 的目标 DOMWindow?

java - 如何求2的幂的最后一位数字

java - 在多台计算机上运行 Sikuli 脚本

java - 如何向单元格表添加滚动条

google-app-engine - 在基于 GWT+GAE 的应用程序中验证

java - 如何在 iText 中添加无边框表格

java - 如何通过 Android Publisher Java API v2 将 obb 文件上传到 Google Play

java - 如何解决AWS Elastic Beanstalk中的SMTP连接超时异常?