java獲得平臺(tái)相關(guān)的行分隔符和java路徑分隔符的方法
【問(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)前工作目錄 |
相關(guān)文章
Java String方法獲取字符出現(xiàn)次數(shù)及字符最大相同部分示例
這篇文章主要介紹了Java String方法獲取字符出現(xiàn)次數(shù)及字符最大相同部分,涉及java字符串的遍歷、比較、計(jì)算等相關(guān)操作技巧,需要的朋友可以參考下2017-09-09InputStreamReader 和FileReader的區(qū)別及InputStream和Reader的區(qū)別
這篇文章主要介紹了InputStreamReader 和FileReader的區(qū)別及InputStream和Reader的區(qū)別的相關(guān)資料,需要的朋友可以參考下2015-12-12詳解Java中用于國(guó)際化的locale類(lèi)
Java中也有用于轉(zhuǎn)換和劃分地區(qū)的國(guó)際化類(lèi)java.lang.Locale,國(guó)際化在程序中設(shè)置語(yǔ)言和時(shí)間等時(shí)非常有用,下面我們就來(lái)詳解Java中用于國(guó)際化的locale類(lèi)2016-06-06從內(nèi)存地址解析Java的static關(guān)鍵字的作用
這篇文章主要介紹了從內(nèi)存地址解析Java的static關(guān)鍵字的作用,包括靜態(tài)成員變量和靜態(tài)方法等重要內(nèi)容,需要的朋友可以參考下2015-10-10mybatis-plus?分頁(yè)類(lèi)型轉(zhuǎn)換工具類(lèi)
用mybatis-plus?的分頁(yè)對(duì)象的時(shí)候,因?yàn)橛胢ybatis-puls?查詢(xún)出來(lái)的分頁(yè)對(duì)象的records里的泛型是實(shí)體,有時(shí)候需要將實(shí)體轉(zhuǎn)換為前端展示的對(duì)象,所有寫(xiě)了一個(gè)分頁(yè)數(shù)據(jù)的類(lèi)型轉(zhuǎn)換工具,解決這個(gè)問(wèn)題,對(duì)mybatis-plus?分頁(yè)工具類(lèi)相關(guān)知識(shí)感興趣的朋友一起看看吧2022-03-03SpringBoot中添加監(jiān)聽(tīng)器及創(chuàng)建線程的代碼示例
這篇文章主要介紹了SpringBoot中如何添加監(jiān)聽(tīng)器及創(chuàng)建線程,文中有詳細(xì)的代碼示例,具有一定的參考價(jià)值,需要的朋友可以參考下2023-06-06在Java中避免NullPointerException的解決方案
這篇文章主要介紹了在Java中避免NullPointerException的解決方案,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04groovy腳本定義結(jié)構(gòu)表一鍵生成POJO類(lèi)
這篇文章主要為大家介紹了groovy腳本定義結(jié)構(gòu)表一鍵生成POJO類(lèi)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03