您可以通过调用来影响字符集解码处理无效输入的方式
CharsetDeprer.onMalformedInput。
通常,
您永远不会
CharsetDeprer直接看到对象,因为它将在后台为您创建。因此,如果需要访问它,则需要使用API,该API允许您
CharsetDeprer直接指定(而不是仅编码名称或
Charset)。
此类API的最基本示例是
InputStreamReader:
InputStream in = ...;CharsetDeprer deprer = StandardCharsets.UTF_8.newDeprer();deprer.onMalformedInput(CodingErrorAction.IGNORE);Reader reader = new InputStreamReader(in, deprer);
请注意,此代码使用了Java
7类
StandardCharsets,对于早期版本,你可以简单地替换它
Charset.forName("UTF-8")(或使用的Charsets类从番石榴)。



