获取Java,jsp文件路径
- 格式:pdf
- 大小:194.37 KB
- 文档页数:16
(1).Weblogic
WebApplication 的系统文件根目录是你的 weblogic 安装所在根目录。 例如:如果你的 weblogic 安装在 c:\bea\weblogic700..... 那么,你的文件根路径就是 c:\. 所以,有两种方式能够让你访问你的服务器端的文件: a.使用绝对路径: 比如将你的参数文件放在 c:\yourconfig\yourconf.properties, 直接使用 new FileInputStream("yourconfig/yourconf.properties"); b.使用相对路径: 相对路径的根目录就是你的 webapplication 的根路径,即 WEB-INF 的上一级目录,将你的参 数文件放在 yourwebapp\yourconfig\yourconf.properties, 这样使用: new FileInputStream("./yourconfig/yourconf.properties"); 这两种方式均可,自己选择。
(5).获得文件真实路径
string file_real_path=request.getRealPath("mypath/filename");
通常使用 request.getRealPath("/");
3.文件操作的类
import java.io.*; import .*; import java.util.*; //import javax.swing.filechooser.*; //import org.jr.swing.filter.*;
result = false; } } return true; }
/** * 清空指定目录中的文件。 * 这个方法将尽可能删除所有的文件,但是只要有一个文件没有被删除都会返回 false。 * 另外这个方法不会迭代删除,即不会删除子目录及其内容。 * @param directoryName 要清空的目录的目录名 * @return 目录下的所有文件都被成功删除时返回 true,否则返回 false。 * @since 0.1 */ public static boolean emptyDirectory(String directoryName) { File dir = new File(directoryName); return emptyDirectory(dir); }
/** * 清空指定目录中的文件。 * 这个方法将尽可能删除所有的文件,但是只要有一个文件没有被删除都会返回 false。 * 另外这个方法不会迭代删除,即不会删除子目录及其内容。 * @param directory 要清空的目录 * @return 目录下的所有文件都被成功删除时返回 true,否则返回 false. * @since 0.1 */ public static boolean emptyDirectory(File directory) { boolean result = false; File[] entries = directory.listFiles(); for (int i = 0; i < entries.length; i ) { if (!entries.delete()) {
(4).如何读相对路径哪?
在 Java 文件中 getResource 或 getResourceAsStream 均可
例:getClass().getResourceAsStream(filePath);//filePath 可以是"/filename",这里的/ 代表 web 发布根路径下 WEB-INF/classes
/** * 创建指定的目录。 * 如果指定的目录的父目录不存在则创建其目录书上所有需要的父目录。 * <b>注意:可能会在返回 false 的时候创建部分父目录。</b> * @param fileName 要创建的目录的目录名 * @return 完全创建成功时返回 true,否则返回 false。 * @since 0.1 */ public static boolean makeDirectory(String fileName) { File file = new File(fileName); return makeDirectory(file); }
File file = new File(fileName); touch(file); }
/** * 修改文件的最后访问时间。 * 如果文件不存在则创建该文件。 * <b>目前这个方法的行为方式还不稳定,主要是方法有些信息输出,这些信息输出是否保留 还在考
虑中。</b> * @param files 需要修改最后访问时间的文件数组。 * @since 0.1 */ public static void touch(File[] files) { for (int i = 0; i < files.length; i ) { touch(files); } }
/** * 删除指定目录及其中的所有内容。 * @param dirName 要删除的目录的目录名 * @return 删除成功时返回 true,否则返回 false。 * @since 0.1 */ public static boolean deleteDirectory(String dirName) { return deleteDirectory(new File(dirName)); }
/** * 创建指定的目录。 * 如果指定的目录的父目录不存在则创建其目录书上所有需要的父目录。 * <b>注意:可能会在返回 false 的时候创建部分父目录。</b> * @param file 要创建的目录 * @return 完全创建成功时返回 true,否则返回 false。 * @since 0.1 */ public static boolean makeDirectory(File file) { File parent = file.getParentFile(); if (parent != null) { return parent.mkdirs(); } return false; }
}
/** * 修改文件的最后访问时间。 * 如果文件不存在则创建该文件。 * <b>目前这个方法的行为方式还不稳定,主要是方法有些信息输出,这些信息输出是否保留 还在考
虑中。</b> * @param file 需要修改最后访问时间的文件。 * @since 0.1 */ public static void touch(File file) { long currentTime = System.currentTimeMillis(); if (!file.exists()) { System.err.println("file not found:" file.getName()); System.err.println("Create a new file:" file.getName()); try { if (file.createNewFile()) { // System.out.println("Succeeded!"); } else { // System.err.println("Create file failed!"); } } catch (IOException e) { // System.err.println("Create file failed!"); e.printStackTrace(); } } boolean result = file.setLastModified(currentTime); if (!result) { // System.err.println("touch failed: " file.getName()); } }
/** * 修改文件的最后访问时间。 * 如果文件不存在则创建该文件。 * <b>目前这个方法的行为方式还不稳定,主要是方法有些信息输出,这些信息输出是否保留 还在考
虑中。</b> * @param fileNames 需要修改最后访问时间的文件名数组。 * @since 0.1 */ public static void touch(String[] fileNames) { File[] files = new File[fileNames.length]; for (int i = 0; i < fileNames.length; i ) { files = new File(fileNames); } touch(files); }
1.如何获得当前文件路径
常用:
字符串类型:System.getProperty("user.dir");
综合:
package com.zcjl.test.base; import java.io.File; public class Test { public static void main(String[] args) throws Exception { System.out.println(Thread.currentThread().getContextClassLoader().get Resource("")); System.out.println(Test.class.getClassLoader().getResource("")); System.out.println(ClassLoader.getSystemResource("")); System.out.println(Test.class.getResource("")); System.out.println(Test.class.getResource("/")); System.out.println(new File("").getAbsolutePath()); System.out.println(System.getProperty("user.dir")); } }