1. 通用定位到用户目录下:

    String userDir = System.getProperty("user.dir");

2. web项目定位到WEB-INF/class 目录下:

String userDir = ClassLoader.getSystemClassLoader().getResource("").getPath();

3. 在JSP 中获取路径

  a. 得到包含工程名的当前页面全路径:request.getRequestURI() ;

  b. 得到工程名:request.getContextPath() ;

  c.  得到当前页面所在目录下全名称:request.getServletPath() ;

  d. 得到页面所在服务器的全路径:application.getRealPath("页面.jsp") ;

4. 在Servlet中取得路径

  a. 得到工程目录:request.getSession().getServletContext().getRealPath("");

  b. 得到地址栏地址:request.getRequestURL() ;

  d. 得到相对地址:request.getRequestURI() ;

5. 附两个读取文件的方式

  a.  需要打包 成jar,读取指定文件   

 package net.sf.jtmt.tokenizers;

 import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL; public class FileReader {
public static String read(String fileName) {
StringBuffer sb = new StringBuffer();
URL url = null;
BufferedReader br = null;
try {
url = FileReader.class.getResource(fileName);
br = new BufferedReader(new InputStreamReader(url.openStream(),
"UTF-8"));
String str; while ((str = br.readLine()) != null) {
sb.append(str+"\n");
}
} catch (Exception ex) {
ex.printStackTrace();
} finally {
try {
if (br != null)
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
return sb.toString();
}
}

FileReader

 package wisers.samza.report.util;

 import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils; public class FileReaderTest { public static void main(String[] args) {
String fileStr = "";
try {
fileStr = FileUtils.readFileToString(new File(
"src/main/resources/stopwords.txt"), "UTF-8");
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(fileStr);
}
}

 b. 读取properties ,支持去读多个properties(指定默认)

 package wisers.samza.report.util;

 import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties; /**
* Created by zf on 2016/8/12 0012.
*/
public class ProConfigUtil { private static final String filePath = "config/config.properties";
private static Map<String, Properties> propertiesMap = new HashMap<>(); private ProConfigUtil() { } public static ProConfigUtil getInstance() {
return getInstance(filePath);
} private static ProConfigUtil getInstance(String filePath) {
Properties prop = propertiesMap.get(filePath);
if (prop == null) {
prop = new Properties();
try {
String userDir = System.getProperty("user.dir");
// WEB-INF/class
//String userDir = ClassLoader.getSystemClassLoader().getResource("").getPath();
String basePath = userDir + "/src/main/";
File file = new File(basePath + filePath);
InputStream inputStream = new FileInputStream(file);
InputStream in = new BufferedInputStream(inputStream);
prop.load(in);
} catch (IOException e) {
e.printStackTrace();
}
propertiesMap.put(filePath, prop);
}
return classHolder.proConfigUtil;
} public static String readValue(String filePath, String key) {
return getInstance(filePath).propertiesMap.get(filePath).getProperty(key);
} public String readValue(String key) {
return propertiesMap.get(filePath).getProperty(key);
} private static class classHolder { private static ProConfigUtil proConfigUtil = new ProConfigUtil();
} }

java 读取文件的路径的更多相关文章

  1. java获取文件的路径问题

    java获取文件的路径问题 在java中读取读取文件,经常因为路径的问题找不到,此文用于记录如何定位文件的简单方法. 本基于springboot做的测试,主要是构建工程方便,所用的方法都是JDK中的方 ...

  2. java读取网页图片路径并下载到本地

    java读取网页图片路径并下载到本地 最近公司需要爬取一些网页上的数据,自己就简单的写了一个demo,其中有一些数据是图片,需要下载下来到本地并且 将图片的路径保存到数据库,示例代码如下: packa ...

  3. [Java]读取文件方法大全(转)

    [Java]读取文件方法大全   1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 public class ReadFromFile {     /**     ...

  4. Java 读取文件的内容

    Java 读取文件的内容 1) CLASS_NAME: 换成自己真实的类名 2) /page/test.json: 换成自己真实的page 3) FileUtils: 来自于org.apache.co ...

  5. Java读取文件-BufferedReader/FileReader/InputStreamReader/FileInputStream的关系和区别

    一.Java读取和存储文件数据流 Java读取文件,实际是将文件中的字节流转换成字符流输出到屏幕的过程   这里面涉及到两个类:InputStreamReader和OutputStreamWriter ...

  6. java读取项目根路径下和任意磁盘位置下的properties文件

    1.读取项目根路径下的properties文件比较简单也是比较常见的一种操作. 具体代码如下: package com.xuanen.util; import java.util.Properties ...

  7. Java读取文件时中文路径处理

    读取文件路径时可能存在以下情况: 1.空格,如果出现空格会转变成“%20” 2.中文路径,如果出现中文路径会变成URI编码“%e5%bc%80%e5%8f%91%e5%b7%a5%e7%a8%8b” ...

  8. 使用java读取文件夹中文件的行数

    使用java统计某文件夹下所有文件的行数 经理突然交代一个任务:要求统计某个文件夹下所有文件的行数.在网上查了一个多小时没有解决.后来心里不爽就决定自己写一个java类用来统计文件的行数,于是花了两个 ...

  9. java 读取文件——按照行取出(使用BufferedReader和一次将数据保存到内存两种实现方式)

    1.实现目标 读取文件,将文件中的数据一行行的取出. 2.代码实现 1).方式1: 通过BufferedReader的readLine()方法. /** * 功能:Java读取txt文件的内容 步骤: ...

随机推荐

  1. Java经典编程题50道之三十六

    有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数. public class Example36 {    public static void main(String[] a ...

  2. GPUImage的filter 响应处理链 的理解笔记

    GPUImage的filter的textures处理链式结构 两个最重要的的地方: 最重要的一个类GPUImageOutput(所有的filter的父类,其他也有继承它的,如GPUImageUIEle ...

  3. 《物联网框架ServerSuperIO教程》-21.终端控制传感器或设备,形成回路控制。附:demo源代码

    21.1     概述 ServerSuperIO以前所做的工作逐步为形成回路控制或级联控制打下基础,例如:服务连接器和设备驱动连接器的开发与应用.总之,是通过多种形式下发命令控制设备(驱动)或传感器 ...

  4. Spring学习(8)--- @Autowired注解(一)

    可以将@Autowired注解为“传统”的setter方法 package com.mypackage; import org.springframework.beans.factory.annota ...

  5. php二进制流文件

    <?php $img_file = 'test.png'; // $fp = fopen($img_file, 'rb'); // $content = fread($fp, filesize( ...

  6. Centos使用vsfotd配置fpt服务

    ---恢复内容开始--- vsftp简介 vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux, BSD, Solaris, HP-UX 以及 IRIX 上面. ...

  7. [leetcode-553-Optimal Division]

    Given a list of positive integers, the adjacent integers will perform the float division. For exampl ...

  8. Kotlin入门第四课:简单工厂模式

    Kotlin基础知识的学习,请参考之前的文章: Kotlin入门第一课:从对比Java开始 Kotlin入门第二课:集合操作 Kotlin入门第三课:数据类型 初次尝试用Kotlin实现Android ...

  9. Example013操作样式

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 【PHP】制作日历

    本期本博主将讲述两种利用PHP制作日历的方法,由于PHP日期函数的便捷性,使得我们制作日历这一过程变得相当简单 问题描述: 1.取到当前日期,并着色显示:2.根据当前日期,判断本月有多少天,一号是周几 ...