java获得当前文件路径-程序员宅基地

技术标签: Java  java  获取文件路径  java web  工程路径获取  获取项目路径  

第一种:

(1)获取当前类的所在工程路径:

File f = new File(this.getClass().getResource("/").getPath());

(2)获取当前类的绝对路径:

File f = new File(this.getClass().getResource("").getPath());

 

第二种:

获取当前类的所在工程路径:

File directory = new File("");//参数为空

String courseFile = directory.getCanonicalPath() ;

 

第三种:

获取当前工程src目录下testpath.txt文件的路径:

URL txtpath = this.getClass().getClassLoader().getResource("testpath.txt");

 

第四种:

获取当前工程路径:

System.out.println(System.getProperty("user.dir"));

 

第五种:

获取当前工程路径

System.out.println( System.getProperty("java.class.path"));

 

新建web项目,目录截图如下:

 

测试代码如下:

package com.yangbin.pathtest;

import java.io.File;
import java.net.URL;

public class TestPath {
	public static void main(String[] args) throws Exception{
		TestPath test = new TestPath();
		test.getPath();
	}
	
	public void getPath() throws Exception{
		// 1
		//(1)获取当前类的所在工程路径:
		File file1 = new File(this.getClass().getResource("/").getPath());
		System.out.println("1.(1)当前类的所在工程路径:"+ file1);
		
		// (2)获取当前类的绝对路径:
		File file2 = new File(this.getClass().getResource("").getPath());
		System.out.println("1.(2)当前类的绝对路径::"+ file2);
		
		// 2.获取当前类的所在工程路径:
		File directory = new File("");//参数为空
		String courseFile = directory.getCanonicalPath() ;
		System.out.println("2.当前类的所在工程路径:"+ courseFile);
		
		// 3.获取当前工程src目录下testpath.txt文件的路径:
		URL txtpath = this.getClass().getClassLoader().getResource("testpath.txt");
		System.out.println("3.当前工程src目录下testpath.txt文件的路径:"+ txtpath);
		
		// 4.获取当前工程路径:
		String path =  System.getProperty("user.dir");
		System.out.println("4.当前工程路径::"+ path);
		
		// 5.获取当前工程路径:
		String path2 = System.getProperty("java.class.path");
		System.out.println("5.当前工程路径::"+ path2);
	}
}


 

输出结果:

1.(1)当前类的所在工程路径:D:\workspace\pathTest\WebRoot\WEB-INF\classes
1.(2)当前类的绝对路径::D:\workspace\pathTest\WebRoot\WEB-INF\classes\com\yangbin\pathtest
2.当前类的所在工程路径:D:\workspace\pathTest
3.当前工程src目录下testpath.txt文件的路径:file:/D:/workspace/pathTest/WebRoot/WEB-INF/classes/testpath.txt
4.当前工程路径::D:\workspace\pathTest
5.当前工程路径::D:\workspace\pathTest\WebRoot\WEB-INF\classes


 

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yangbin_hust/article/details/17766377

智能推荐

工作-2017.08.06-周记总结篇(二)_工作周记总结-程序员宅基地

文章浏览阅读685次。拦截器(比如CXF框架中的)和过滤器都是拿来做什么的???都有些什么作用???参考链接http://blog.csdn.net/tanggao1314/article/details/48415555CXF框架拦截器 - 积累沉淀 - 程序员宅基地CXF拦截器(Interceptor)的使用 - 熔岩 - 51CTO技术博客 http://lavasoft.blog.51cto._工作周记总结

CentOS 7 安装 MySQL 8_cenost 装mysql8.0-程序员宅基地

文章浏览阅读209次。CentOS 7 安装MySQL 81.下载2.解压1.下载打开 [MySQL 官方下载地址](https://downloads.mysql.com/archives/community/)选择我们要安装的版本 32位系统选择第一个 64位系统选择第二个2.解压创建 tar.xz 文件命令:tar cvf xxx.tar xxx/ 得到 xxx.tar文件,然后 xz ..._cenost 装mysql8.0

GdxRuntimeException: Couldn't load shared library 'gdx' for target: Linux, 32-bit-程序员宅基地

文章浏览阅读1.5k次。在将libgdx应用项目迁移至Android Studio中时,出现了以下报错信息: Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load shared library 'gdx' for target: Linux, 32-bit at com.badlogic.gdx.utils...._couldn't load shared library 'gdx' for target:

操作系统实验(2)—— Linux启动初始化过程设计探析实验_linux启动初始化过程探析 老师参与-程序员宅基地

文章浏览阅读1.5k次,点赞7次,收藏8次。 操作系统实验—— Linux启动初始化过程设计探析实验文章目录Linux启动初始化过程设计探析实验一、 实验目的二、 实验内容三、 内核源码研读3.1 引导启动程序Boot目录概述3.2 BIOS的启动原理3.3 bootsect.s程序3.3.1 bootsect原理概述3.3.2 bootsect.s源码注释3.4 setup.s程序3.4.1 setup.s原理概述3.4.2 setup.s源码注释3.5 head.s程序3.5.1 head.s原理概述3.5.2 head.s源码解读3.._linux启动初始化过程探析 老师参与

sqlyog安装和破解_sqkgyh-程序员宅基地

文章浏览阅读3k次,点赞17次,收藏23次。安装sqlyog和使用注册码下载地址http://downinfo.myhostadmin.net/ha_SQLyog_Enterprise.rar下载后解压,运行目录下的SQLyogEnt.exe,提示要输入注册码。用户名yunjian注册码81f43d3dd20872b6..._sqkgyh

c语言计算球的表面积和体积_c语言计算球的表面积和体积(保留2位小数)-程序员宅基地

文章浏览阅读593次。c语言计算球的表面积和体积_c语言计算球的表面积和体积(保留2位小数)

随便推点

Composer使用_composer package search-程序员宅基地

文章浏览阅读266次。原文:http://www.cnblogs.com/52fhy/p/5246013.html#3876041是什么如果你知道yum、apt-get、npm、bower等命令中的一种或者多种,那么,你也能很快知道composer是什么了。没错,它就是PHP里快速安装类库的。平时,我们安装一个PHP类库,需要搜索->下载;使用composer,我们只要知道包名,直接composer insatl..._composer package search

数据恢复技术 戴士剑、陈永红编_数据恢复技术 陈永红-程序员宅基地

文章浏览阅读1.7k次。数据恢复技术 戴士剑、陈永红编,这本书真难下载_数据恢复技术 陈永红

SIT1044Q:5V 供电,IO 口兼容 3.3V,5Mbps,(CAN FD)待机模式总线收发器-程序员宅基地

文章浏览阅读115次。SIT1044Q 是一款应用于 CAN 协议控制器和物理总线之间的接口芯片,可应用于卡车、公交、小汽车、工业控制等领域,支持 5Mbps 灵活数据速率(Flexible Data-Rate),具有在总线与 CAN 协议控制器之间进行差分信号传输的能力。➢ SIT1044QT/3 I/O 电压范围支持 3.3V 和 5V MCU。➢ 高速 CAN,支持 5Mbps (CAN FD)(灵活数据速率)➢ 支持 HVSON8 / DFN3*3-8,小外形,无引脚封。➢ 驱动器(TXD)显性超时功能。

门禁系统的人脸识别系统的设计与实现-程序员宅基地

文章浏览阅读835次,点赞19次,收藏18次。为了开发该系统,我在下面花费了很多功夫和心思,例如,到图书馆阅读vue技术、MYSQL数据库等方面的编程书籍,又在网上搜索了很多别人做的相类似的系统,将他们比较好的设计理念应用到自己的设计当中,最后才有了现在的成果。与国外相比,我国信息技术的发展相对晚一些,不过后面,经过我们的不断追赶,我国的信息技术已经有了很大的进步,我国对现有的软件开发技术进行了细致的专研,目前我国已经能够独立的开发系统,并且也已经将这些软件系统应用于人们的生活中和各行各业中,目前,软件行业是我国非常受欢迎的行业[6-9]。

Flutter 仿掘金微信图片滑动退出页面效果_flutter photo_view 滑动关闭-程序员宅基地

文章浏览阅读946次。1.增加onSlidingPage回调,可以在滑动页面的时候设置页面上面的其他元素的状态2.增加中文文档这个需求在做extended_image的时候就有上帝客户提过了,一直都没有时间去考虑实现。最近思考了一下,把效果给实现了。首先开启滑动退出页面效果ExtendedImageparameter description default enableSlide..._flutter photo_view 滑动关闭

SAP MM供应商主数据表-程序员宅基地

文章浏览阅读1.1w次,点赞2次,收藏13次。_主数据表