有没有一种方法可以使用Java将ANSI字符串转换为UTF?我有一个自定义的序列化程序,使用DataInputStream类的readUTF和writeUTF方法进行反序列化和序列化串。如果我收到一个编码为ANSI且过长(约100,000个字符长)的字符串,则会出现错误;
Caused by:java.io.UTFDataFormatException: encoded string too long: 106958 bytes
但是在我的Junit测试中,我能够创建一个包含120000个'a'的字符串,并且它完美地工作。
我已经检查了以下帖子,但仍然出现错误;
- 在Java中将UTF-8转换为ISO-8859-1-如何保持单字节 - 如何替换Ruby中的重音拉丁字符?
Caused by:java.io.UTFDataFormatException: encoded string too long: 106958 bytes
但是在我的Junit测试中,我能够创建一个包含120000个'a'的字符串,并且它完美地工作。
我已经检查了以下帖子,但仍然出现错误;
- 在Java中将UTF-8转换为ISO-8859-1-如何保持单字节 - 如何替换Ruby中的重音拉丁字符?