java 读取文件的路径
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 读取文件的路径的更多相关文章
- java获取文件的路径问题
java获取文件的路径问题 在java中读取读取文件,经常因为路径的问题找不到,此文用于记录如何定位文件的简单方法. 本基于springboot做的测试,主要是构建工程方便,所用的方法都是JDK中的方 ...
- java读取网页图片路径并下载到本地
java读取网页图片路径并下载到本地 最近公司需要爬取一些网页上的数据,自己就简单的写了一个demo,其中有一些数据是图片,需要下载下来到本地并且 将图片的路径保存到数据库,示例代码如下: packa ...
- [Java]读取文件方法大全(转)
[Java]读取文件方法大全 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 public class ReadFromFile { /** ...
- Java 读取文件的内容
Java 读取文件的内容 1) CLASS_NAME: 换成自己真实的类名 2) /page/test.json: 换成自己真实的page 3) FileUtils: 来自于org.apache.co ...
- Java读取文件-BufferedReader/FileReader/InputStreamReader/FileInputStream的关系和区别
一.Java读取和存储文件数据流 Java读取文件,实际是将文件中的字节流转换成字符流输出到屏幕的过程 这里面涉及到两个类:InputStreamReader和OutputStreamWriter ...
- java读取项目根路径下和任意磁盘位置下的properties文件
1.读取项目根路径下的properties文件比较简单也是比较常见的一种操作. 具体代码如下: package com.xuanen.util; import java.util.Properties ...
- Java读取文件时中文路径处理
读取文件路径时可能存在以下情况: 1.空格,如果出现空格会转变成“%20” 2.中文路径,如果出现中文路径会变成URI编码“%e5%bc%80%e5%8f%91%e5%b7%a5%e7%a8%8b” ...
- 使用java读取文件夹中文件的行数
使用java统计某文件夹下所有文件的行数 经理突然交代一个任务:要求统计某个文件夹下所有文件的行数.在网上查了一个多小时没有解决.后来心里不爽就决定自己写一个java类用来统计文件的行数,于是花了两个 ...
- java 读取文件——按照行取出(使用BufferedReader和一次将数据保存到内存两种实现方式)
1.实现目标 读取文件,将文件中的数据一行行的取出. 2.代码实现 1).方式1: 通过BufferedReader的readLine()方法. /** * 功能:Java读取txt文件的内容 步骤: ...
随机推荐
- vue-cli webpack在node环境下安装使用
第一步,需要下载并安装node.js以及他的npm组件: 第二步,用node -v;npm -v来测试node.js以及npm是否安装成功(建议用GIT命令行工具,因为GIT是linux系统),如果显 ...
- 玩转nodeJS系列:使用cluster创建nodejs单机多核集群(多进程)
前言: nodejs提供了cluster集群(支持端口共享的多进程),cluster基于child_process,process二次封装,方便我们使用该功能实现单机nodejs的web集群. 1.c ...
- Windows 7安装Oracle 10g的方法
Windows7下安装Oracle 10g提示"程序异常终止,发生未知错误"的解决方法 1.修改Oracle 10G\database\stage\prereq\db\refhos ...
- top的用法
top命令可以用来方便地观察当前系统中运行的进程的信息,并可以在运行过程中执行改变进程的优先级.更改排序规则.导出状态信息等操作,非常方便. 1.主要选项 -d:后接秒数,状态更新的秒数,默认5秒-b ...
- Spring Security3详细配置
Spring Security3详细配置 表名:RESOURCE 解释:资源表备注: 资源表 RESOURCE(资源表) 是否主键 字段名 字段描述 数据类型 长度 可空 约束 缺省值 备注 是 ID ...
- 关于通用的C#后台获取前台页面的标签的正则表达式
Regex reg = new Regex("<div[^>]*?class=\"类属性名称\"[^>]*>(.*?) </div> ...
- Java数值避免浮点型计算丢失精度问题
问题描述及方案 假设我们在做电商项目,在进行计算时这个丢失精度在产品价格计算就会出现问题,很有可能造成我们手里有9.99元然后后面会有一堆9,但是呢这些钱无法购买一个10元的商品. 在某些编程语言中有 ...
- sql with as 用法(转载)
一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到.有的时候, ...
- OpenCV 之 神经网络 (一)
人工神经网络(ANN) 简称神经网络(NN),能模拟生物神经系统对真实物体所作出的交互反应,是由具有适应性的简单单元(称为神经元)组成的广泛并行互连网络. 1 神经元 1.1 M-P 神经元 如下 ...
- [leetcode-594-Longest Harmonious Subsequence]
We define a harmonious array is an array where the difference between its maximum value and its mini ...