1. ホーム
  2. java

[解決済み] Javaで "UTF-8 "文字列リテラルを取得する場所はどこですか?

2022-02-17 01:57:25

質問

このコードでは、文字列リテラルの代わりに定数を使おうとしています。

new InputStreamReader(new FileInputStream(file), "UTF-8")

"UTF-8" が頻繁に出てくるので、そのような場合は static final という変数で代用できます。JDKのどこにそのような変数があるかご存知ですか?

ところで、よく考えてみると、このような定数は設計上よろしくないですね。 パブリック スタティック リテラル ... データ重複の解決策にはならない

解決方法は?

Java 1.7+の場合。 java.nio.charset.StandardCharsets の定数を定義しています。 Charset を含む UTF_8 .

import java.nio.charset.StandardCharsets;

...

StandardCharsets.UTF_8.name();

アンドロイド用:minSdk 19