`
cucaracha
  • 浏览: 137673 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
A8f3fa2f-18ce-3862-897a-5d2209197c90
Java NIO.2
浏览量:85814
7a076ba7-8ec8-3241-aa3c-67bb2f7856a2
Java EE 7 简明教...
浏览量:35650
社区版块
存档分类
最新评论

[NIO.2] 第一篇 什么是文件路径?

阅读更多
在文件系统中,将会以某种方式在一个或多个硬盘驱动器上存放文件,以便查找。大多数文件系统都是以树形结构来存储文件。树的最顶层节点叫做根节点。根节点下可以包含文件和子目录,子目录下又可以包含文件和子目录,以此循环下去。

什么是文件路径?

下图展示了一个简单的包含根节点的目录树。Windows 系统支持多个根节点,每个根节点表示一个磁盘分区,例如 C:\ 或 D:\。而 *nix 系统只支持一个根节点,根节点由正斜线表示:/。



在文件系统中,每个文件都由唯一的文件路径来标识,并且都开始于根目录,在 *nix 系统中文件路径是:

/home/sally/statusReport

在 Windows 系统中文件路径是:

C:\home\sally\statusReport

用来分隔子目录之间的分隔符各个系统之间各不相同,在 *nix 中使用正斜线(/),在 Windows 系统中使用反斜线(\)。

相对路径和绝对路径

文件路径分为相对路径和绝对路径。绝对路径总是包含根节点并且包含了能够定位到文件的所有目录信息。例如 /home/sally/statusReport 就是一个绝对路径。

相对路径必须要和另外一个路径拼接才能定位到文件,例如 joe/foo 就是一个相对路径。如果没有更多的信息的话,相对路径不能准确地定位到文件。

符号链接/软链接(Symbolic Links)

文件系统中最典型的对象是文件和目录。但是在有的文件系统中还提供了符号链接,符号链接也叫做软链接。

一个符号链接是一个特殊的文件,它指向另一个目标文件。大多数情况下,对与应用程序来说,符号链接都是透明的,所有对符号链接的操作都会自动执行到目标文件上。例外的情况是,当对符号链接进行重命名或删除操作的时候,只会重命名和删除符号链接本身,而不会影响到目标文件。

对于用户来说,符号链接是透明的,对符号链接进行读写操作相当于对目标文件进行读写操作。

大多数文件系统都允许自有地使用符号链接。在创建符号链接的时候要小心循环引用。循环引用是指链接的目标文件最终又指向了原始的链接。例如,目录 a 指向目录 b ,目录 b 指向目录 c ,c 下面有子文件夹又指向目录 a。当程序在递归目录结构的时候,循环引用可能会造成很严重的问题。

文章来源:http://www.aptusource.org/2014/03/what-is-path/
  • 大小: 13.5 KB
分享到:
评论

相关推荐

    httpcore-nio-4.4.4.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    httpcore-nio-4.4.12.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    httpcore-nio-4.4.10.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    httpcore-nio-4.4.6.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    httpcore-nio-4.4.14.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    httpcore-nio-4.4.15.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    httpcore-nio-4.4.5.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    JAVA_API1.6文档(中文)

    java.nio.channels 定义了各种通道,这些通道表示到能够执行 I/O 操作的实体(如文件和套接字)的连接;定义了用于多路复用的、非阻塞 I/O 操作的选择器。 java.nio.channels.spi 用于 java.nio.channels 包的服务...

    JavaAPI中文chm文档 part2

    由于文件比较大 分为两个部分,这是第二部分 java.applet 提供创建 applet 所必需的类和 applet 用来与其 applet 上下文通信的类。 java.awt 包含用于创建用户界面和绘制图形图像的所有类。 java.awt.color 提供...

    [Java参考文档].JDK_API 1.6

    java.nio.channels 定义了各种通道,这些通道表示到能够执行 I/O 操作的实体(如文件和套接字)的连接;定义了用于多路复用的、非阻塞 I/O 操作的选择器。 java.nio.channels.spi 用于 java.nio.channels 包的服务...

    java实现的LSB顺序隐写

    2、使用java NIO读取被嵌入的文件,将其转换为byte数组,需要特别指出的是原生方法得到是byte类型的数组,但是算法实现需要更加精细的操作,所以还需要对得到的byte数组进行进一步的转换封装,将其转换成形如10101...

    java jdk-api-1.6 中文 chmd

    java.nio.channels 定义了各种通道,这些通道表示到能够执行 I/O 操作的实体(如文件和套接字)的连接;定义了用于多路复用的、非阻塞 I/O 操作的选择器。 java.nio.channels.spi 用于 java.nio.channels 包的服务...

    [Java参考文档]

    jdk_api_1_6帮助开发 java.applet 提供创建 applet 所必需的类和 applet 用来与其 applet 上下文通信的类。 java.awt 包含用于创建用户界面和绘制图形图像的所有类。 java.awt.color 提供用于颜色空间的类。 ...

    java api最新7.0

    java.nio.channels 定义了各种通道,这些通道表示到能够执行 I/O 操作的实体(如文件和套接字)的连接;定义了用于多路复用的、非阻塞 I/O 操作的选择器。 java.nio.channels.spi 用于 java.nio.channels 包的服务...

    JavaAPI1.6中文chm文档 part1

    由于比较大分为两个部分,这是第一部分 java.applet 提供创建 applet 所必需的类和 applet 用来与其 applet 上下文通信的类。 java.awt 包含用于创建用户界面和绘制图形图像的所有类。 java.awt.color 提供用于...

    JDK_1_6 API

    java.nio.channels 定义了各种通道,这些通道表示到能够执行 I/O 操作的实体(如文件和套接字)的连接;定义了用于多路复用的、非阻塞 I/O 操作的选择器。 java.nio.channels.spi 用于 java.nio.channels 包的服务...

    Java 1.6 API 中文 New

    java.nio.channels 定义了各种通道,这些通道表示到能够执行 I/O 操作的实体(如文件和套接字)的连接;定义了用于多路复用的、非阻塞 I/O 操作的选择器。 java.nio.channels.spi 用于 java.nio.channels 包的服务...

Global site tag (gtag.js) - Google Analytics