【問(wèn)題】
不同系統(tǒng)平臺(tái)下的行分隔符、路徑分隔符等常常不同。如
行分隔符在windows 下是 \r\n,在Linux下面是 \n, 在Mac下是 \r
路徑分隔符在windows下是 \ ,在LInux下是 /
如何在Java程序獲取當(dāng)前平臺(tái)的分隔符,以及其他系統(tǒng)相關(guān)的狀態(tài)呢?
【實(shí)現(xiàn)】
import java.util.Properties;
public class SeparatorUtils {
/* system properties to get separators */
static final Properties PROPERTIES = new Properties(System.getProperties());
/**
* get line separator on current platform
* @return line separator
*/
public static String getLineSeparator(){
return PROPERTIES.getProperty("line.separator");
}
/**
* get path separator on current platform
* @return path separator
*/
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 運(yùn)行時(shí)環(huán)境版本 |
java.vendor |
Java 運(yùn)行時(shí)環(huán)境供應(yīng)商 |
java.vendor.url |
Java 供應(yīng)商的 URL |
java.home |
Java 安裝目錄 |
java.vm.specification.version |
Java 虛擬機(jī)規(guī)范版本 |
java.vm.specification.vendor |
Java 虛擬機(jī)規(guī)范供應(yīng)商 |
java.vm.specification.name |
Java 虛擬機(jī)規(guī)范名稱(chēng) |
java.vm.version |
Java 虛擬機(jī)實(shí)現(xiàn)版本 |
java.vm.vendor |
Java 虛擬機(jī)實(shí)現(xiàn)供應(yīng)商 |
java.vm.name |
Java 虛擬機(jī)實(shí)現(xiàn)名稱(chēng) |
java.specification.version |
Java 運(yùn)行時(shí)環(huán)境規(guī)范版本 |
java.specification.vendor |
Java 運(yùn)行時(shí)環(huán)境規(guī)范供應(yīng)商 |
java.specification.name |
Java 運(yùn)行時(shí)環(huán)境規(guī)范名稱(chēng) |
java.class.version |
Java 類(lèi)格式版本號(hào) |
java.class.path |
Java 類(lèi)路徑 |
java.library.path |
加載庫(kù)時(shí)搜索的路徑列表 |
java.io.tmpdir |
默認(rèn)的臨時(shí)文件路徑 |
java.compiler |
要使用的 JIT 編譯器的名稱(chēng) |
java.ext.dirs |
一個(gè)或多個(gè)擴(kuò)展目錄的路徑 |
os.name |
操作系統(tǒng)的名稱(chēng) |
os.arch |
操作系統(tǒng)的架構(gòu) |
os.version |
操作系統(tǒng)的版本 |
file.separator |
文件分隔符(在 UNIX 系統(tǒng)中是“/”) |
path.separator |
路徑分隔符(在 UNIX 系統(tǒng)中是“:”) |
line.separator |
行分隔符(在 UNIX 系統(tǒng)中是“/n”) |
user.name |
用戶的賬戶名稱(chēng) |
user.home |
用戶的主目錄 |
user.dir |
用戶的當(dāng)前工作目錄 |