【質問】
ラインセパレーター、パスセパレーターなどは、多くの場合、システムプラットフォームが異なる場合に異なります。のように
コードコピーは次のとおりです。
ラインセパレーターは、Windowsの下で /r /n、Linuxの下で /n、Macの下で /rです
パスセパレーターは / windowsの下および / linuxの下です
Javaプログラムで現在のプラットフォームやその他のシステム関連状態の区切り文字を取得するにはどうすればよいですか?
【成し遂げる】
コードコピーは次のとおりです。
java.util.propertiesをインポートします。
パブリッククラスSeparatorUtils {
/ *セパレータを取得するシステムプロパティ */
静的最終プロパティプロパティ= new Properties(System.GetProperties());
/**
*現在のプラットフォームでラインセパレーターを取得します
* @returnラインセパレーター
*/
public static string getlineseparator(){
return properties.getProperty( "line.separator");
}
/**
*現在のプラットフォームでパスセパレーターを取得します
* @returnパスセパレーター
*/
public static string getpathseparator(){
return properties.getProperty( "path.separator");
}
}
class separatorutiltest {
public static void main(string [] args){
system.out.println( "line separator is:" + separatorutils.getLineseParator());
System.out.println( "Path Separator is:" + separatorutils.getPathSeparator());
}
}
【注記】
取得できる他の属性:
Java.version | Javaランタイム環境バージョン |
java.vendor | Javaランタイム環境ベンダー |
java.vendor.url | JavaベンダーのURL |
java.home | Javaインストールディレクトリ |
java.vm.specification.version | Java仮想マシン仕様バージョン |
java.vm.specification.vendor | Java仮想マシン仕様ベンダー |
java.vm.specification.name | Java仮想マシン仕様名 |
java.vm.version | Java仮想マシンの実装バージョン |
java.vm.vendor | Java仮想マシン実装ベンダー |
java.vm.name | Java仮想マシンの実装名 |
java.specification.version | Javaランタイム環境仕様バージョン |
java.specification.vendor | Javaランタイム環境仕様ベンダー |
java.specification.name | Javaランタイム環境仕様名 |
java.class.version | Javaクラス形式バージョン番号 |
java.class.path | Java ClassPath |
java.library.path | ライブラリをロードするときに検索するパスのリスト |
java.io.tmpdir | デフォルトの一時ファイルパス |
java.compiler | 使用するJITコンパイラの名前 |
java.ext.dirs | 1つ以上の拡張ディレクトリへのパス |
os.name | オペレーティングシステムの名前 |
os.arch | オペレーティングシステムアーキテクチャ |
os.version | オペレーティングシステムバージョン |
file.separator | file delimiter( "/" in unix systems) |
Path.Separator | Path Separator( ":" Unix Systems) |
line.separator | line delimiter( "/n" Unix Systems) |
user.name | ユーザーのアカウント名 |
user.home | ユーザーのホームディレクトリ |
user.dir | ユーザーの現在の作業ディレクトリ |