【发布时间】:2021-03-25 00:03:52
【问题描述】:
我知道我们可以像这样设置PrintStream 的Charset:
PrintStream printStream = new PrintStream( System.out, true, StandardCharsets.UTF_8.name() ); // "UTF-8".
有没有办法获取被PrintStream 对象(例如System.out)使用的Charset?像这样的:
Charset charset = System.out.getCharset() ;
...但我在PrintStream 上找不到任何此类吸气剂。
这个问题是在解决this Question 中的一个谜时提出的。
【问题讨论】:
-
PrintStream被记录在其中有一个OutputStreamWriter。我猜你最后的办法是找到OutputStreamWriter字段,然后在上面调用getEncoding... -
这不是系统属性
file.encoding的值吗?
标签: java character-encoding getter printstream charset