システムプロパティを取得する – getPropertiesメソッド
public static Properties getProperties()
System.getPropertiesメソッドを利用することで、現在のプラットフォームにおけるシステムプロパティの情報を取得できます。
UtilProp.java
- package com.example.mynavi.util;
- public class UtilProp {
- public static void main(String[] args) {
- var prop = System.getProperties();
- for (var key : prop.keySet()) {
- System.out.println(key + "=" + prop.get(key));
- }
- }
- }
↓
- java.specification.version=23
- sun.cpu.isalist=amd64
- sun.jnu.encoding=MS932
- java.class.path=
- java.vm.vendor=Oracle Corporation
- sun.arch.data.model=64
- ...後略...
Properties#keySetメソッドはプロパティ名のセットを、getメソッドは指定のキーに対応するプロパティ値を返します。
単にシステムプロパティを列挙したいだけであれば、以下のようにlistメソッドを利用しても構いません。
UtilProp2.java(抜粋)
- prop.list(System.out);
主なシステムプロパティには、以下のようなものがあります。
| 主なシステムプロパティ | |
|---|---|
| プロパティ | 概要 |
| java.version | Javaのバージョン |
| java.vendor | Javaのベンダー |
| java.vendor.url | ベンダーのURL |
| java.home | Javaのインストール先フォルダー |
| java.library.path | ライブラリをロードする際に検索するパス(リスト) |
| java.io.tmpdir | デフォルトの一時フォルダー |
| os.name | オペレーティングシステムの名前 |
| os.version | オペレーティングシステムのバージョン |
| file.separator | ファイル区切り文字(Unix環境では「/」) |
| path.separator | パス区切り文字(Unix環境では「:」) |
| line.separator | 行区切り文字 (UNIX では “\n”) |
| user.name | ユーザーアカウント |
| user.home | ユーザーのホームフォルダー |
| user.dir | ユーザーの作業フォルダー |
監修
山田祥寛(有限会社 WINGSプロジェクト)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NEC にてシステム企画業務に携わるが、2003年 4 月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト(https://wings.msn.to/)」の代表でもある。主な著書に『改訂 3 版JavaScript 本格入門』(技術評論社)、「独習シリーズ(C#・Python・PHP・Ruby・JSP&サーブレットなど)」(翔泳社)、「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravel など)」(Amazon Kindle)など。売り上げの累計は100万部を超える。