JavaIO流之文件路径

对着背影说爱祢 提交于 2020-03-03 05:15:50

斜杠和反斜杠

正斜杠,又称左斜杠,符号是"/"

反斜杠,也称右斜杠,符号是"\"

Unix/Linux中,路径的分隔采用正斜"/",比如"cd /home/java"

而在Windows中,路径分隔采用反斜杠"\",比如"F:\yihong_\book"

我开发是在Windows平台上,所以Java程序配置文件中文件路劲都是用的"\\",而项目是部署在Linux上的,所有文件路劲都是用的"/"

转义字符

Windows中,我在F盘复制地址“F:\yihong_\book”,粘贴至Java程序,会自动变成“F:\\yihong_\\book”。这个时候就发生了转义,这个操作是idea自动完成的。

String path = "F:\\yihong_\\book"; 对的

String path = "F:\yihong_\book"; 错的

在java的代码开发中\是代表转义字符。

Java的转义字符\的转义并不是什么都需要转义,什么都可以转义,它只支持一下转义:
\b \t \n \f \r \" \' \\

绝对路径和相对路径

文件路径的表示可以分为绝对路径和相对路径。

Windows绝对路径:以盘符开始 如F:\yihong_\book

Windows相对路径:

. 指的是当前目录

.. 指的是当前目录的上一级目录

./book表示当前目录下的book文件夹

/book表示当前盘符下的book文件夹

Linux绝对路径: 以root根目录/开始的路径 如/ 表示root根目录

Linux相对路径:

./ 指的是当前目录

../ 指的是当前目录的上一级目录

.代表当前目录,..代表上级目录。

使用File.seperator拼接文件路径

 

String fileSeperator = File.separator;

File.separator会根据操作系统的不同而使用正确的文件分隔符符。

eg:

String dirName = FilenameUtils.getBaseName(parentStack.getFileName()) + File.separator + parentStack.getMethodName() + File.separator;

 

Java常见的系统路径与获取方法

 

// 分隔符
String fileSeperator = File.separator;

// 用户主目录
String userHome = System.getproperties().getProperty("user.home");

// Java实时运行环境的安装目录
String javaPath = System.getproperties().getProperty("java.home");

// 操作系统名称
String osName = System.getproperties().getProperty("os.name");

// 当前用户程序所在目录
String userDir = System.getproperties().getProperty("user.dir");

// JDK的安装目录
String jdkDir = System.getproperties().getProperty("java.ext.dirs");

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!