システム変数file.EncodingはJavaの実行にどのくらい影響しますか?
2231 ワード
システム変数file.EncodingはJavaの実行にどのくらい影響しますか?
この話題は、Nutzのissue 361がこのissueを考えるとき、私はずっとシステム変数fileを使用する傾向にある.EncodingはJVMのデフォルト符号化を変更する.今日、このシステム変数が、JVMに与える影響はどれほど大きいのかと思います.最も簡単な方法でこの変数の影響を見てみます.JDK 1.6です.0_20のsrc.zipファイルで、fileを含むものを検索します.encodingワードのファイル全部で4つ見つかりました.それぞれ、まずメインイベントjavaに行きます.nio.Charsetクラス:
View Code JAVA
java.net.URLEncoderの静的構造方法、影響する方法java.net.URLEncoder.encode(String)
View Code JAVA
com.sun.org.apache.xml.internal.serializer.EncodingのgetMimeEncodingメソッド(209行から)
View Code JAVA
最後のjavax.print.DocFlavorクラスの静的構造方法:
View Code JAVA
システム変数file.encodingは1に影響する.Charset.defaultCharset()Java環境で最も重要な符号化設定2.URLEncoder.Encode(String)Web環境で最もよく見られる符号化使用3.com.sun.org.apache.xml.internal.serializer.Encodingは、符号化設定のないxmlファイルの読み出しに影響する.javax.print.DocFlavorは印刷の符号化に影響するので、影響はやはり大きいですよ.Javaで符号化されたキーと言えるでしょう.
この話題は、Nutzのissue 361がこのissueを考えるとき、私はずっとシステム変数fileを使用する傾向にある.EncodingはJVMのデフォルト符号化を変更する.今日、このシステム変数が、JVMに与える影響はどれほど大きいのかと思います.最も簡単な方法でこの変数の影響を見てみます.JDK 1.6です.0_20のsrc.zipファイルで、fileを含むものを検索します.encodingワードのファイル全部で4つ見つかりました.それぞれ、まずメインイベントjavaに行きます.nio.Charsetクラス:
View Code JAVA
public static Charset defaultCharset() {
if (defaultCharset == null) {
synchronized (Charset.class) {
java.security.PrivilegedAction pa =
new GetPropertyAction("file.encoding");
String csn = (String)AccessController.doPrivileged(pa);
Charset cs = lookup(csn);
if (cs != null)
defaultCharset = cs;
else
defaultCharset = forName("UTF-8");
}
}
return defaultCharset;
}
java.net.URLEncoderの静的構造方法、影響する方法java.net.URLEncoder.encode(String)
View Code JAVA
com.sun.org.apache.xml.internal.serializer.EncodingのgetMimeEncodingメソッド(209行から)
View Code JAVA
最後のjavax.print.DocFlavorクラスの静的構造方法:
View Code JAVA
システム変数file.encodingは1に影響する.Charset.defaultCharset()Java環境で最も重要な符号化設定2.URLEncoder.Encode(String)Web環境で最もよく見られる符号化使用3.com.sun.org.apache.xml.internal.serializer.Encodingは、符号化設定のないxmlファイルの読み出しに影響する.javax.print.DocFlavorは印刷の符号化に影響するので、影響はやはり大きいですよ.Javaで符号化されたキーと言えるでしょう.