java中file路径_Java中的文件路径
Java中的文件路径
今天一定在这里解决这个问题,通过路径读文件一般就3种方式,但他们完全不同:
1. File myFile=new File("myfile.txt");
上面这么写是从当前路径读文件,当前路径指启动当前Java进程的路径,不同的情况这个路径都不一样,在eclipse里一般是当前项目的路径,在 Servlet里一般就是Servlet容器的路径。这个路径的绝对值可以通过System.getProperty("user.dir"))取到。这个方法同时可以通过绝对路径取文件,如File myFile=new File("D:\\temp\\myfile.txt"); File myFile=new File("/usr/user1/myfile.txt");
2. InputStream myFileStream = this.getClass().getResourceAsStream("myfile.txt");
从当前类所在路径读文件, myfile.txt应该是和当前这个类在同一个目录中的文件。如果路径前放了个"/", 如this.getClass().getResourceAsStream("/myfile.txt"),那就是从当前classpath开始读了
3.InputStream myFileStream = this.getClass().getClassLoader().getResourceAsStream("myfile.txt");
这个容易和第2种混淆,它是指从classpath开始找文件,前面加不加"/"都一样,其实它相当与this.getClass().getResourceAsStream("/myfile.txt"), 与这个有相同效果的还有
Thread.currentThread().getContextClassLoader().getResourceAsStream("myfile.txt")或
Thread.currentThread().getContextClassLoader().getResourceAsStream("/myfile.txt")
ClassLoader.getSystemResource("myfile.txt")或
ClassLoader.getSystemResource("/myfile.txt")
下面这个代码
package com.test.path;
import java.io.File;
class TestPath {
public static void main(String[] args) throws Exception {
System.out.println(Thread.currentThread().getContextClassLoader().getResource(""));
System.out.println(TestPath.class.getClassLoader().getResource(""));
System.out.println(ClassLoader.getSystemResource(""));
System.out.println(TestPath.class.getClassLoader().getResource(""));
System.out.println(TestPath.class.getResource(""));
System.out.println(TestPath.class.getResource("/"));
System.out.println(new File("").getAbsolutePath());
System.out.println(System.getProperty("user.dir"));
}
}
它的输出:
file:/C:/TestArena/bin/
file:/C:/TestArena/bin/
file:/C:/TestArena/bin/
file:/C:/TestArena/bin/
file:/C:/TestArena/bin/com/test/path/
file:/C:/TestArena/bin/
C:\TestArena
C:\TestArena
java中file路径_Java中的文件路径相关推荐
- java中file类_Java中file类
File类的概述:File更应该叫做一个路径,文件路径或者文件夹路径 ,路径分为绝对路径和相对路径,绝对路径是一个固定的路径,从盘符开始,相对路径相对于某个位置,在eclipse下是指当前项目下,在d ...
- java中file对象_Java中File对象的常用方法
创建: 1.createNewFile()指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false. 2.mkdir() 在指定位置创建一个单级文件夹. 3.mkdirs() ...
- java linux路径_Java,Linux文件路径
斜杠和反斜杠 正斜杠,又称左斜杠,符号是"/": 反斜杠,也称右斜杠,符号是"\". 在Unix/Linux中,路径的分隔采用正斜"/",比 ...
- java get image获取根路径_Java 获取资源文件路径
1 问题描述 通过源码运行时,一般使用如下方式读取资源文件: String str = "1.jpg"; 资源文件与源码文件放在同一目录下,或者拥有同一父级目录: String s ...
- java如何获取文件路径_java如何获取文件路径
第一种:File f = new File(this.getClass().getResource("/").getPath()); System.out.println(f); ...
- getresourceasstream 路径_Java 获取资源文件路径
1 问题描述 通过源码运行时,一般使用如下方式读取资源文件: String str = "1.jpg"; 资源文件与源码文件放在同一目录下,或者拥有同一父级目录: String s ...
- java io 文件路径_如何从Java项目中的相对路径读取文件? java.io.File找不到指定的路径...
如何从Java项目中的相对路径读取文件? java.io.File找不到指定的路径 我有一个包含2个包的项目: ListStopWords.txt ListStopWords.txt 在包(2)中我有 ...
- java 中的流_Java中的流(IO
Java中的流(IO流. java.io包中定义了多个流类型(类或抽象类)来实现 输入 / 输出功能,可以从不同的角度对其进行分类: 按单位可分为: 字节流 (一个字节一个字节的读取) ...
- 解决:利用IDEA的右上角图标打开jsp文件,在浏览器中打开的是“本机文件路径”,而不是“http路径”问题
解决:利用IDEA的右上角图标打开jsp文件,在浏览器中打开的是"本机文件路径",而不是"http路径"问题 一·问题描述: 二·错误原因: 三·解决方法: 方 ...
- Error: ENOSPC: System limit for number of file watchers reached, watch'所在文件路径'
Error: ENOSPC: System limit for number of file watchers reached, watch'所在文件路径' vue工程在 deepin15.11 系统 ...
最新文章
- 跨域的原因以及解决方案
- ML之RF:利用Js语言设计随机森林算法【DT之CART算法(gain index)】并应用随机森林算法
- 递推DP UVA 590 Always on the run
- 时隔两周,我给阎王设计的地府CRM终于做完了
- 【机器学习】异常检测算法速览(Python代码)
- 分享 - 普通程序员如何转向AI方向
- mysql 5.5 替换字符_MySQL replace函数替换字符串语句的用法
- UGUI Canvas
- Linux开机自动启动ORACLE设置
- 47-高级路由:BGP 镜子实验
- HTML/CSS/js 日期等其他函数 相关收藏
- Vivado保姆级安装
- 计算机一级excel函数rank函数应用,2017年计算机一级excel操作题
- 寒武纪2021数字后端笔试题
- 全面详解互联网企业开放API的 “守护神”
- 案例——蚂蚁金服初探,唯一的金融互联网生态...
- dataframe横向和纵向拼接
- TensorFlow学习笔记——《TensorFlow技术解析与实战》
- 大数据为什么需要学python?
- 多线程练习:模拟多人爬山