Java如何获得平台相关的行分隔符、路径分隔符?
我的技术博客经常被流氓网站恶意爬取转载。请移步原文:http://www.cnblogs.com/hamhog/p/3550194.html ,享受整齐的排版、有效的链接、正确的代码缩进、更好的阅读体验。
【问题】
不同系统平台下的行分隔符、路径分隔符等常常不同。如
行分隔符在windows 下是 \r\n,在Linux下面是 \n, 在Mac下是 \r
路径分隔符在windows下是 \ ,在LInux下是 /——来自网络资料
如何在Java程序获取当前平台的分隔符,以及其他系统相关的状态呢?
【实现】
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 运行时环境版本 | 
| java.vendor | Java 运行时环境供应商 | 
| java.vendor.url | Java 供应商的 URL | 
| java.home | Java 安装目录 | 
| java.vm.specification.version | Java 虚拟机规范版本 | 
| java.vm.specification.vendor | Java 虚拟机规范供应商 | 
| java.vm.specification.name | Java 虚拟机规范名称 | 
| java.vm.version | Java 虚拟机实现版本 | 
| java.vm.vendor | Java 虚拟机实现供应商 | 
| java.vm.name | Java 虚拟机实现名称 | 
| java.specification.version | Java 运行时环境规范版本 | 
| java.specification.vendor | Java 运行时环境规范供应商 | 
| java.specification.name | Java 运行时环境规范名称 | 
| java.class.version | Java 类格式版本号 | 
| java.class.path | Java 类路径 | 
| java.library.path | 加载库时搜索的路径列表 | 
| java.io.tmpdir | 默认的临时文件路径 | 
| java.compiler | 要使用的 JIT 编译器的名称 | 
| java.ext.dirs | 一个或多个扩展目录的路径 | 
| os.name | 操作系统的名称 | 
| os.arch | 操作系统的架构 | 
| os.version | 操作系统的版本 | 
| file.separator | 文件分隔符(在 UNIX 系统中是“/”) | 
| path.separator | 路径分隔符(在 UNIX 系统中是“:”) | 
| line.separator | 行分隔符(在 UNIX 系统中是“/n”) | 
| user.name | 用户的账户名称 | 
| user.home | 用户的主目录 | 
| user.dir | 用户的当前工作目录 | 
Java如何获得平台相关的行分隔符、路径分隔符?的更多相关文章
- java获得平台相关的行分隔符和java路径分隔符的方法
		System.getProperties(): 行分隔符在windows 下是 \r\n,在Linux下面是 \n, 在Mac下是 \r路径分隔符在windows下是 \ ,在LInux下是 / Sy ... 
- 从0开始学Java——JSP&Servlet——HttpServletRequest相关的几个路径信息
		在HttpServletRequest中有几个获取路径的接口:getRequestURI/getContextPath/getServletPath/getPathInfo 这些接口互相之间有什么区别 ... 
- Java微信公众平台开发_02_启用服务器配置
		源码将在晚上上传到 github 一.准备阶段 需要准备事项: 1.一个能在公网上访问的项目: 见:[ Java微信公众平台开发_01_本地服务器映射外网 ] 2.一个微信公众平台账号: 去注册: ... 
- JEECG 3.7.1 版本发布,企业级JAVA快速开发平台
		JEECG 3.7.1 版本发布,企业级JAVA快速开发平台 ---------------------------------------- Version: Jeecg_3.7.1项 目: ... 
- HTML5应用 + Cordova = 平台相关的混合应用
		Jerry之前的一篇文章 SAP Fiori应用的三种部署方式 曾经提到SAP Fiori应用的三种部署方式: On Premise环境下以ABAP BSP应用作为Fiori应用部署和运行的载体 部署 ... 
- KingbaseFlySync V1R6 管控平台Linux命令行安装
		关键字: KingbaseFlySync.KingbaseES.Linux.x86_64.mips64el.aarch64.Java 管控平台: Web管控平台(Manager.Console.Com ... 
- Atitit  J2EE平台相关规范--39个  3.J2SE平台相关规范--42个
		Atitit J2EE平台相关规范--39个 3.J2SE平台相关规范--42个 2.J2EE平台相关规范--39个5 XML Parsing Specification16 J2EE Conne ... 
- java io学习记录(路径分隔符)
		java路径分隔符(路径表示) path="E:\\xp\\test\\2.jpg"; path="E:/xp/test/2.jpg"; path=" ... 
- package、import、java及javac的相关介绍(转)
		Package: package中所存放的文件 所有文件,不过一般分一下就分这三种 1.java程序源文件,扩展名为.java: 2.编译好的java类文件,扩展名为.class: 3.其他文件,也称 ... 
随机推荐
- javaScript 要点(十五)HTML DOM 导航
			通过 HTML DOM,能够使用节点关系在节点树中导航. 1.HTML DOM 节点列表 getElementsByTagName() 方法返回节点列表.节点列表是一个节点数组. 下面的代码选取文档中 ... 
- mybatis 打印sql log配置
			mybatis 打印sql log, 方便调试.如何配置呢? log4j.xml : <!-- 打印sql start --> <appender name="IBatis ... 
- Redis实战之征服 Redis + Jedis + Spring (一)
			Redis + Jedis + Spring (一)—— 配置&常规操作(GET SET DEL)接着需要快速的调研下基于Spring框架下的Redis操作. 相关链接: Redis实战 Re ... 
- postfix反垃圾邮件说明
			参考地址:http://guailele.blog.51cto.com/1156442/780223 1.打开 smtp 的认证模块 在/etc/postfix/main.cf文件最后加上: sm ... 
- PHP str_replace() 函数
			定义和用法 str_replace() 函数使用一个字符串替换字符串中的另一些字符. 语法 str_replace(find,replace,string,count) 参数 描述 find 必需.规 ... 
- hdu 5452 Minimum Cut 树形dp
			Minimum Cut Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=54 ... 
- 使用RecyclerView写树形结构的TreeRecyclerView
			简单介绍 android是不提供树形控件的,假设须要使用树形控件.我们应该怎么做呢? 先看效果 上图是一个明显的树形结构 实现原理 在逻辑上,它们是包括关系.数据结构上是多叉树,这是毋庸置疑的. 可是 ... 
- Tricks Device (hdu 5294 最短路+最大流)
			Tricks Device Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) To ... 
- 戴尔笔记本win8.1+UEFI下安装Ubuntu14.04过程记录
			瞎扯:笔记本刚买不久就想装ubuntu来着,但结果发现BIOS启动方式为UEFI,网上一搜索发现跟曾经的双系统安装方法不一样,看详细教程感觉相当复杂,并且也有点操心折腾跪了这新本本所以一直没有动手.但 ... 
- SQL Server 2008中的hierarchyid
			这也是SQL Server 2008的一个重要新增特性.主要解决的问题是拥有层次关系的表格.例如我们日常生活中用到最多的组织结构图.我们一般会用一个Region表保存区域数据,而每个区域则又可能会有相 ... 
