2012-04-03 7 views
2

私はnetbeansプラットフォームでモジュラーアプリケーションを作成します。このアプリケーションがjavaを実行しているOSをチェックする方法はわかりません。私のアプリケーションにフォルダと画像のパスを設定したいと思っています。私は実行時にそれを確認したい。私に提案してください。Javaクラスを使用して実行時にOSを検出する方法は?

+0

このトピックをチェック:Javaでオペレーティングシステムをプログラムで決定する方法を教えてください。 http://stackoverflow.com/questions/228477/how-do-i-programmatically-determine-operating-system-in-java – dexametason

答えて

4

あなたは、あなたがUtilities module(非常に便利)との依存関係を追加する必要がありNetBeansプラットフォームを使用している場合:

次に、あなたはちょうどあなたがそれをしたい場合には

Utilities.isMac() or Utilities.isUnix() or Utilities.isWindows(). 

を言いますより正確にすることができます

switch(Utilities.getOperatingSystem()) 
{ 
    case Utilities.OS_AIX: 
    case Utilities.OS_FREEBSD: 
    case Utilities.OS_HP: 
    case Utilities.OS_IRIX: 
    case Utilities.OS_LINUX: 
    case Utilities.OS_MAC: 
    case Utilities.OS_OPENBSD: 
    case Utilities.OS_OS2: 
    case Utilities.OS_SOLARIS: 
    case Utilities.OS_SUNOS: 
    case Utilities.OS_TRU64: 
    case Utilities.OS_WIN95: 
    case Utilities.OS_WIN98: 
    case Utilities.OS_WIN2000: 

(これはすべて、残りの部分は、 r、私は恐れています、上のリンクを参照してくださいより多くのOS)。

+0

あまりにもありがとう、このメソッドは、OSを検出するために非常にいいです。 – Jay

0

System.getProperty("os.name")を使用してください。

+0

よろしくお願いします。 – Jay

0

System.getProperty("os.name");は、OS名を返す必要があります。

+0

私に助けてくれてありがとう。 – Jay

2

を開始するための使用であるかもしれない:

String osName = System.getProperty("os.name").toLowerCase(); 

あなたはOS名を取得し、あなたはあなたのos.Aと比較することができます。例:

boolean isMacOs = osName.startsWith("mac os x"); 
if (isMacOs) 
{ 
    // do mac-specific things here 
} 
+0

本当にありがとうございます。 – Jay

関連する問題