`
坏我一锅粥
  • 浏览: 61236 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

13、java中几种不同文件路径的差别(绝对路径,全路径)

    博客分类:
  • IO
 
阅读更多
package com.tij.io.file;

import java.io.File;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;

/**
 * 学习java中几种表示文件路径的方法差别
 * @author guoyoujun
 * @date 2014-3-17
 */
public class JavaFilePath {

	/**
	 * java.io.File类中包含了三个方法来确定一个文件的路径
	 * <p>getPath(): 这个方法返回的是文件的抽象路径的一段字符串,如果使用这个抽象路径来创建一个file对象,那只是单纯的返回一个路径名
	 * 如果用作URL使用,则去除掉http协议头返回一个路径名
	 * <p>getAbsolutePath():这个方法返回文件的绝对路径,如果文件是以绝对路径创建的则返回绝对路径名,如果是相对路径创建的,则要考虑系统相关性
	 * 在unix系统中,相对路径名是以当前用户的目录为绝对路径的,在window系统中相对路径是以当前磁盘为绝对路径
	 *<p>getCanonicalPath():这个方法是获取文件完整路径的唯一方法,获取路径的时候会先转成文件的绝对形式,然后会根据系统相关性(window,unix)来获取路径
	 * @param args
	 * @throws IOException 
	 * @throws URISyntaxException 
	 */
	public static void main(String[] args) throws IOException, URISyntaxException {
		File file = new File("/Users/GYJ/java1.txt");
		printPaths(file);
		//relative path(相对路径)
        file = new File("NewDB.properties");
        printPaths(file);
        //complex relative paths(复杂点的相对路径)
        file =new File("/Users/../GYJ/funshion/bbinfo.txt");
        printPaths(file);
        //URI paths(URL)
        file =new File(new URI("file:///Users/GYJ/java1.txt"));
        printPaths(file);

	}
	
	private static void printPaths(File f) throws IOException {
		System.out.println("AbsolutePath = " + f.getAbsolutePath());
		System.out.println("CanonicalPath = " + f.getCanonicalPath());
		System.out.println("Path = " + f.getPath());
	} 

}
out put============
AbsolutePath = C:\Users\GYJ\java1.txt
CanonicalPath = C:\Users\GYJ\java1.txt
Path = \Users\GYJ\java1.txt


AbsolutePath = C:\Users\GYJ\workspace\java_workspace\io\NewDB.properties
CanonicalPath = C:\Users\GYJ\workspace\java_workspace\io\NewDB.properties
Path = NewDB.properties


AbsolutePath = C:\Users\..\GYJ\funshion\bbinfo.txt
CanonicalPath = C:\GYJ\funshion\bbinfo.txt
Path = \Users\..\GYJ\funshion\bbinfo.txt


AbsolutePath = C:\Users\GYJ\java1.txt
CanonicalPath = C:\Users\GYJ\java1.txt
Path = \Users\GYJ\java1.txt




分享到:
评论

相关推荐

    Java中获取文件路径的几种方式

    理解如何在Java中获取文件路径,特别是区分绝对路径和相对路径,对于构建稳定、可移植的应用程序至关重要。本文将深入探讨Java中获取文件路径的多种方法,以及这些方法背后的原理。 ### 一、Java中的路径类型 ####...

    java文件路径获取

    通过本文的介绍,我们可以了解到Java中获取文件路径的不同方法及其区别。选择合适的方法可以有效提高程序的灵活性和可维护性。在实际开发中,根据具体需求灵活运用这些技术,可以使我们的代码更加高效稳定。

    java绝对路径和相对路径

    本文将详细介绍如何在Java中获取不同类型的路径,包括Web服务器下的文件路径、本地路径以及相对路径。 #### 一、获取Web服务器下的文件路径 在Java Web开发中,获取Web服务器下的文件路径是非常常见的需求。主要有...

    JAVA中获取各种路径

    以下是对标题“JAVA中获取各种路径”及其描述和部分内答所提及的几种路径获取方法的详细解析。 ### 1. JSP中的路径获取 #### (1) 获取当前页面的完整路径:`request.getRequestURI()` 此方法返回客户端请求的当前...

    Java 中几种获取文件路径的方式

    Java 开发中我们经常要获取文件的路径,比如读取配置文件等等。今天我们就关于文件的路径和如何读取文件简单地探讨一下。 2. 文件的路径 文件的路径通常有 相对路径 与 绝对路径。 2.1 相对路径 以当前文件为基准...

    java(Web)中相对路径,绝对路径问题总结

    在Java Web中,这通常涉及以下几种情况: - **Web应用的根目录**:在Servlet中,`"/"` 通常表示Web应用的根目录。 - **当前目录**:`"./"` 表示当前目录。 - **上级目录**:`"../"` 表示上级目录。 对于URI、URL和...

    JAVA获取各种路径总结

    在Java开发中,特别是在Web应用开发中,经常需要获取不同类型的路径,例如:当前Web应用的路径、特定文件的真实路径等。本文将详细讲解如何通过不同的方式来获取这些路径。 #### JSP中获取路径 1. **获取当前应用...

    总结一下java获取路径几种途径

    在Java中,获取路径是操作文件和目录时的基本需求。正确地获取和使用路径对于文件的创建、读取、写入等操作至关重要。本篇总结将从多个角度介绍Java中获取路径的方法。 ### 1. 获取系统属性路径 Java提供了一种...

    java路径获得几种方法.txt

    本文将详细介绍几种获取Java路径的方法,并对每种方法的应用场景进行解释。 #### 二、获取路径的基本概念 在讨论具体方法之前,我们先了解几个基本概念: - **虚拟路径**:指的是Web应用中的逻辑路径,通常以`/`...

    java调用winrar生成压缩文件路径有空格问题

    在Java中通过`Runtime.getRuntime().exec()`方法执行外部命令时,如果路径中包含空格,则该命令可能会被解释为多个参数,导致无法正确识别目标文件路径。例如,假设文件路径为"C:\Users\Documents\My Files\file.txt...

    java读写properties文件,解决系统找不到指定路径,解决写入后读取正常,但文件数据未更新问题

    在处理Properties文件时,可能会遇到几个常见的问题,包括找不到指定路径、读取正常但文件数据未更新的情况。以下是对这些问题的详细解答。 首先,让我们解决“系统找不到指定路径”的问题。在Java中,加载...

    java读取配置文件

    在Java中,我们可以使用多种方法来读取配置文件,下面将详细介绍几种常见的方法。 1. **使用`java.io`流读取** 最基础的方式是使用Java的I/O流来读取文本配置文件(通常是.properties格式)。例如,`java.io....

    JAVA获取项目路径.doc

    在JSP环境中,可以通过以下几种方式来获取不同类型的路径: 1. **获取包含工程名的当前页面全路径**: ```java request.getRequestURI() ``` 输出如 `/TEST/test.jsp`。 2. **获取工程名**: ```java ...

    Java或web中解决所有路径问题

    在Java Web环境中,存在几种常见的路径概念: 1. **ClassPath路径**:这是Java虚拟机启动时加载类库(class or lib)的路径,也是加载项目自定义类的位置。 2. **WebRoot路径**:这是Web应用的根目录,包含了所有的...

    java 获取项目文件路径实现方法

    这里我们将深入探讨几种不同的方法来实现这一目标,同时解析每种方法的适用场景和返回路径的特点。 1. `this.getClass().getResource("/").getPath().substring(1)` 这种方法返回的是项目的根目录路径。它通过加载...

    文件服务器虚拟路径访问文件鉴权代码

    在文件服务器中,虚拟路径通常是指一种映射机制,它将用户看到的易于理解和记忆的路径(比如 "/documents/users/john Doe/file.txt")映射到实际的服务器存储位置。这样做可以隐藏真实文件系统的结构,提高安全性,...

    java获取路径的各种方法

    本文将详细介绍Java中获取路径的几种方法,以及相对路径和绝对路径的基本概念。 首先,理解绝对路径和相对路径的概念至关重要。绝对路径是文件或目录在硬盘上的完整路径,无论起点在哪里都能准确地指向目标。例如,...

    JSP中得到几种得到路径的方法

    在Java Server Pages(JSP)开发中,获取各种路径是构建动态网页和处理请求的关键步骤之一。本文将深入探讨在JSP中获取不同路径的方法,包括它们的应用场景、实现方式以及可能的影响,帮助开发者更好地理解和掌握JSP...

Global site tag (gtag.js) - Google Analytics