`
xqf222
  • 浏览: 128970 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java处理文件路径的类

 
阅读更多

转帖说明:非常的好用,方便在进行Velocity和FreeMarker生成文件时候处理要生成文件的路径问题

package util;

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

/** *//**
* @author <a href="mailto:maryang@live.cn" mce_href="Maryangmailto:maryang@live.cn">Maryang</a>
* @version $Revision: 1.0 $
* 这个类提供了一些根据类的class文件位置来定位的方法。
*/
public class PathUtil {

/** *//**
* 获取一个Class的绝对路径
* @param clazz Class对象
* @return Class的绝对路径
*/
public static String getPathByClass(Class clazz){
String path = null;
try {
URI uri = clazz.getResource("").toURI();
File file = new File(uri);
path = file.getCanonicalPath();
} catch (URISyntaxException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return path;
}

/** *//**
* 获取一个文件相对于一个Class相对的绝对路径
* @param clazz Class对象
* @param relativePath Class对象的相对路径
* @return 文件绝对路径
*/
public static String getFilePathByClass(Class clazz,String relativePath){
String filePath = null;
String clazzPath = getPathByClass(clazz);
StringBuffer sbPath = new StringBuffer(clazzPath);
sbPath.append(File.separator);
sbPath.append(relativePath);
File file = new File(sbPath.toString());
try {
filePath = file.getCanonicalPath();
} catch (IOException e) {
e.printStackTrace();
}
return filePath;
}
public static void main(String[] args) {
try {
System.out.println(getPathByClass(PathUtil.class));
System.out.println(getFilePathByClass(PathUtil.class,"../../images/logo.gif"));
System.out.println(getFilePathByClass(PathUtil.class,"../../../"));

} catch (Exception e) {
e.printStackTrace();
}
}
}

/*

E:/MyWorkspace/FreeMarkerTest/WebRoot/WEB-INF/classes/util
E:/MyWorkspace/FreeMarkerTest/WebRoot/WEB-INF/images/logo.gif
E:/MyWorkspace/FreeMarkerTest/WebRoot

*/

分享到:
评论

相关推荐

    java文件路径获取

    在Java开发中,经常会遇到需要获取文件路径的情况,尤其是在处理配置文件、图片等资源时。本文将详细介绍Java中获取文件路径的各种方法及其应用场景,帮助开发者更好地理解和掌握这些技巧。 #### 二、基本概念 在...

    Java 解决中文路径问题

    例如,添加`-Dfile.encoding=UTF-8`到JVM启动参数,使得Java默认使用UTF-8编码处理文件路径。 5. 操作系统环境变量: - 在Windows系统中,可以修改系统的区域和语言设置,确保文件路径的默认编码与Java期望的编码...

    [史上最全] 文件处理工具类 java版 处理文件流, 文件目录递归等

    该类封装了50多个与文件相关的操作方法,简化了开发人员在文件操作方面的负担,无需手动处理文件流的关闭或连接池等问题,极大提高了代码的可读性和可维护性。 #### 二、核心功能 ##### 1. 文件路径解析 `...

    用java通过文件操作实现最短路径问题

    4. **异常处理**:确保程序能够处理文件不存在、读写权限不足或其他IO异常的情况。可以使用try-catch块来捕获并适当地处理这些异常。 5. **资源管理**:在操作完成后,记得关闭打开的文件流以释放系统资源。 在...

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

    在Java编程语言中,处理文件路径是开发过程中常见的需求之一。理解如何在Java中获取文件路径,特别是区分绝对路径和相对路径,对于构建稳定、可移植的应用程序至关重要。本文将深入探讨Java中获取文件路径的多种方法...

    Java获得某个路径下的所有文件列表,并写入指定文件

    首先,我们需要导入Java.io和java.nio.file相关的包,它们提供了处理文件和目录的API: ```java import java.io.*; import java.nio.file.*; import static java.nio.file.FileVisitOption.FOLLOW_LINKS; ``` 1. *...

    java 文件路径小工具

    java 文件路径小工具 谁用谁知道 管理windows下的目录文件

    java文件路径操作详细(转载)

    Java文件路径操作是Java开发中常见且重要的任务,无论是在读写文件、处理资源还是进行系统交互时,都需要对文件路径进行操作。本篇将详细探讨Java中的文件路径处理技术,主要涵盖以下知识点: 1. **File类**: ...

    JAVA中如何得到文件路径.pdf

    ### JAVA中如何获取文件路径详解 #### 一、概述 在Java编程中,获取文件路径是一项基础而重要的技能。无论是处理本地文件还是部署在Web容器中的应用,了解如何正确地获取文件路径对于程序的正常运行至关重要。本文...

    关于Java文件路径问题

    这篇博客文章“关于Java文件路径问题”可能探讨了Java中处理文件路径的常见挑战和解决方案。 在Java中,文件路径可以是绝对路径或相对路径。绝对路径是从根目录开始的完整路径,它指明了文件的确切位置。相对路径则...

    java读取配置文件

    Java NIO(New IO)提供了非阻塞的I/O操作,可以更高效地处理文件读取: ```java Path path = Paths.get("config.properties"); Properties props = new Properties(); try (InputStream in = Files....

    java下载文件到指定路径(不打开窗口)

    ### Java下载文件到指定路径(不打开窗口) #### 概述 本文档主要介绍如何使用Java编程语言实现从网络上下载文件并将其保存至本地指定路径的功能,且在执行过程中不会弹出任何用户界面窗口。这种方法非常适合后台...

    java中File的相对路径与绝对路径总结

    通过以上分析可以看出,在Java中处理文件路径时,根据不同的应用场景选择合适的路径表示方式非常重要。无论是相对路径还是绝对路径,都需要结合具体的项目结构和文件存储位置进行合理的设置。此外,还需要注意不同...

    java 写文件 java 写文件 java 写文件 java 写文件

    Java编程语言提供了丰富的API用于处理文件操作,包括创建、读取、写入和删除文件等。在Java中,写文件是通过`java.io`包中的类实现的,主要涉及File类、FileWriter类、BufferedWriter类等。下面将详细阐述Java写文件...

    JAVA获取各种路径总结

    ### JAVA 获取各种路径总结 在Java开发中,特别是在Web应用开发中,经常需要获取不同类型的路径,例如:当前Web应用的路径...掌握这些方法,可以帮助开发者更好地管理项目中的文件路径,提高程序的灵活性和可维护性。

    JAVA中获取各种路径

    在Java开发中,路径处理是常见且重要的环节,尤其是在Web应用中,正确处理各种路径能够确保资源的准确访问和系统的稳定运行。以下是对标题“JAVA中获取各种路径”及其描述和部分内答所提及的几种路径获取方法的详细...

    java根据路径对文件进行的操作

    Java 7引入了Path API,提供了一种更面向对象的方式来处理文件路径。Java 8增加了文件系统操作的更多功能,如`Files.lines()`用于读取文件每一行的流。 总之,Java的`JAVAIO`库是其强大功能的关键部分,提供了丰富...

    java生成所有文件包括子文件夹下文件的路径列表

    在Java编程中,生成一个文件或目录及其子文件夹下所有文件的路径列表是一项常见...如果想要进一步理解这个功能,可以解压并查看这个文件,它可能包含一个完整的Java程序,展示了如何调用上述方法并打印出所有文件路径。

    JAVA对音频文件处理程序

    1. `AudioReader.java`: 主要的音频读取和处理类,实现了音频读取、降分贝处理和写入新文件的逻辑。 2. `test.wav`: 示例音频文件,用于测试程序。 3. `output.wav`: 处理后的新音频文件。 总结来说,这个项目展示...

    java 文件操作类

    `java.io`包提供了大量的类来处理文件,其中最常用的就是`File`类。本文将深入探讨`File`类以及相关的实用方法,帮助你更好地理解和运用Java进行文件操作。 1. **File类的基本概念** `File`类是Java中的一个核心类...

Global site tag (gtag.js) - Google Analytics