2014-08-29 60 views
0

我在java工作的一個項目,我想知道承認:在java中如何在我的Unix基本系統或Windows上

  1. 如何,如果在我的系統路徑使用識別"/""\"
  2. 識別系統的version我運行的應用程序

我將不勝感激代碼示例。

+1

如果您正確使用File對象的,你甚至都不需要知道的分隔符。看看所有的構造函數java.io.File必須爲你完成這項工作。 – Durandal 2014-08-29 16:17:19

回答

3

這兩個通過System Properties

路徑分隔符

System.getProperty("path.separator"); 

可用的操作系統版本

System.getProperty("os.version"); 
+1

這就是我正在尋找的。 – 2014-08-29 16:13:47

3
System.getProperties().list(System.out); 
System.out.println(System.getProperty("os.name")); 

System.getProperties()會給你你需要的所有信息。考慮

+0

謝謝我,但我不需要完整的列表。 – 2014-08-29 16:13:27

+0

嘗試 System.getProperty(「os.name」),System.getProperty(「os。版本「),System.getProperty(」file.separator「) – 2014-08-29 16:15:14

2
  1. 文件分隔符

    System.getProperty("file.separator") 
    
  2. 操作系統使用:

    System.getProperty("os.name") 
    

此外,讓所有的系統正確領帶你可以使用:

public static void main(String[] args) { 
    System.getProperties().list(System.out); 
} 
+0

確定前兩條語句幫助。 – 2014-08-29 16:14:45

2

這個例子中會列出所有可用的屬性

public class SystemDemo { 

public static void main(String[] args) { 

    // this will list the current system properties 
    Properties p = System.getProperties(); 
    p.list(System.out); 
} 

爲了得到你需要的信息:
操作系統
p.getProperty( 「os.name」)
文件分離器
p.get屬性(「file.separator」)

1
  1. java.io.File.separator;
  2. 系統屬性「操作系統名稱」:System.getProperty("os.name")
+0

這有助於確定整個事情,但我更具體的問題 – 2014-08-29 16:16:36

0
System.getProperty("file.separator"); //to get default file separator of O.S 

String os = System.getProperty("os.name").toLowerCase(); 
if(os.indexOf("win") >=0) 
// code for windows 
else if(os.indexOf("mac") >= 0) 
// code for mac 
else if(os.indexOf("nix") >=0 || os.indexOf("nux") >=0) 
// code for linux 
+0

確定但我更喜歡正則表達式來做訣竅 – 2014-08-29 16:18:01

+1

選擇是你的,這是我的風格:) @JeanWilliamEyidi – 2014-08-29 16:19:03

相關問題