jjzjj

CharsetDecoder

全部标签

java - 在 Java : null characters with CharsetDecoder/Encoder 中从 Windows 1252 转换为 UTF8

我知道这是一个非常笼统的问题,但我快要生气了。我使用了这段代码:Stringucs2Content=newString(bufferToConvert,inputEncoding);byte[]outputBuf=ucs2Content.getBytes(outputEncoding);returnoutputBuf;但我读到最好使用CharsetDecoder和CharsetEncoder(我的内容可能包含目标编码之外的某些字符)。我刚刚编写了这段代码,但存在一些问题://CreatetheencoderanddecoderforWin1252CharsetcharsetInput=

java - 如何检测非法的 UTF-8 字节序列以在 java 输入流中替换它们?

有问题的文件不在我的控制之下。大多数字节序列都是有效的UTF-8,它不是ISO-8859-1(或其他编码)。我想尽我所能提取尽可能多的信息。该文件包含一些非法字节序列,应将其替换为替换字符。这不是一件容易的事,它认为它需要一些关于UTF-8状态机的知识。Oracle有一个包装器可以满足我的需要:UTF8ValidationFilterjavadoc是否有类似的东西可用(商业或免费软件)?谢谢-斯蒂芬解决方法:finalBufferedInputStreamin=newBufferedInputStream(istream);finalCharsetDecodercharsetDecod