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. Log4j2分析与实践

    当前网络上关于Log4j2的中文文章比较零散,这里整理了一下关于Log4j2比较全面的一些文章,供广大技术人员参考 Log4j2分析与实践-认识Log4j2 Log4j2分析与实践-架构 Log4j2 ...

  2. 脑洞大开--一条项目中常用的linux命令引发的经典算法题

    小时候家里定了<读者>的月刊,里面记录一个故事:说有有个偏僻的乡村一日突然来了一个美女,她携着万贯家财子女在当地安家落户,成了当地的乡绅.她让她的子女世世代代的保守这个秘密,直到这个秘密不 ...

  3. 判断客户端使用的是安卓还是苹果,然后加载对应的css文件

    <script type="text/javascript" charset="utf-8"> var browser = { versions: ...

  4. Vue2 全家桶仿 微信App 项目,支持多人在线聊天和机器人聊天

    前言 这个项目是利用工作之余写的一个模仿微信app的单页面应用,整个项目包含27个页面,涉及实时群聊,机器人聊天,同学录,朋友圈等等,后续页面还是开发中.写这个项目主要目的是练习和熟悉vue和vuex ...

  5. 虚拟桌面 VDI

    什么是VDI(Virtual Desktop Infrastructure): 通过对于本企业的服务器进行整合,使用VMware进行虚拟机部署,利用服务器资源,实现由一个物理机实现多个虚拟机,解决资源 ...

  6. Oracle数据库web维护客户端管理工具软件

    TreeSoft数据库管理系统使用JAVA开发,采用稳定通用的springMVC +JDBC架构,实现基于WEB方式对 MySQL,Oracle,PostgreSQL 等数据库进行维护管理操作. 功能 ...

  7. Mysql按时间段分组查询

    Mysql按时间段分组查询来统计会员的个数,mysql个数 Mysql按时间段分组查询来统计会员的个数,mysql个数 1.使用case when方法(不建议使用)- 代码如下 复制代码SELECT ...

  8. 【Android Developers Training】 101. 显示快速联系人挂件(Quick Contact Badge)

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  9. 【Android Developers Training】 14. 序言:管理Activity生命周期

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  10. solr的基本概念

    一.solr的基本概念 大家可以把solr搜索引擎看成一个数据库,不过是基于内存的.它可以存储信息,并且根据你的查询条件返回你想要的信息. 1.collection和core的概念 collectio ...