博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
File中操作路径的API(转)
阅读量:6941 次
发布时间:2019-06-27

本文共 3736 字,大约阅读时间需要 12 分钟。

这几天一直在搞Java,模板引擎系列和程序猿执业修养系列都暂停了,在Java上忙的不亦乐乎!由于对Java还不太熟悉,经历了各种纠结终于完成了任务。以下是关于Java获取当前目录的方法的备忘录。

原文地址:

1、利用System.getProperty()函数获取当前路径:

System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径
2、使用File提供的函数获取当前路径:
File directory = new File("");//设定为当前文件夹
try{
System.out.println(directory.getCanonicalPath());//获取标准的路径
System.out.println(directory.getAbsolutePath());//获取绝对路径
}catch(Exceptin e){}
File.getCanonicalPath()和File.getAbsolutePath()大约只是对于new File(".")new File("..")两种路径有所区别。
# 对于getCanonicalPath()函数,“."就表示当前的文件夹,而”..“则表示当前文件夹的上一级文件夹
# 对于getAbsolutePath()函数,则不管”.”、“..”,返回当前的路径加上你在new File()时设定的路径
# 至于getPath()函数,得到的只是你在new File()时设定的路径
比如当前的路径为 C:\test :
File directory = new File("abc");
directory.getCanonicalPath(); //得到的是C:\test\abc
directory.getAbsolutePath(); //得到的是C:\test\abc
direcotry.getPath(); //得到的是abc
File directory = new File(".");
directory.getCanonicalPath(); //得到的是C:\test
directory.getAbsolutePath(); //得到的是C:\test\.
direcotry.getPath(); //得到的是.
File directory = new File("..");
directory.getCanonicalPath(); //得到的是C:\
directory.getAbsolutePath(); //得到的是C:\test\..
direcotry.getPath(); //得到的是..
另外:System.getProperty()中的字符串参数如下:
System.getProperty()参数大全
# java.version Java Runtime Environment version 
# java.vendor Java Runtime Environment vendor 
# java.vendor.url Java vendor URL 
# java.home Java installation directory 
# java.vm.specification.version Java Virtual Machine specification version 
# java.vm.specification.vendor Java Virtual Machine specification vendor 
# java.vm.specification.name Java Virtual Machine specification name 
# java.vm.version Java Virtual Machine implementation version 
# java.vm.vendor Java Virtual Machine implementation vendor 
# java.vm.name Java Virtual Machine implementation name 
# java.specification.version Java Runtime Environment specification version 
# java.specification.vendor Java Runtime Environment specification vendor 
# java.specification.name Java Runtime Environment specification name 
# java.class.version Java class format version number 
# java.class.path Java class path 
# java.library.path List of paths to search when loading libraries 
# java.io.tmpdir Default temp file path 
# java.compiler Name of JIT compiler to use 
# java.ext.dirs Path of extension directory or directories 
# os.name Operating system name 
# os.arch Operating system architecture 
# os.version Operating system version 
# file.separator File separator ("/" on UNIX) 
# path.separator Path separator (":" on UNIX) 
# line.separator Line separator ("\n" on UNIX) 
# user.name User's account name 
# user.home User's home directory 
# user.dir User's current working directory

 

java获得当前文件路径:

第一种:

File f = new File(this.getClass().getResource("/").getPath());
System.out.println(f);
结果:
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin
获取当前类的所在工程路径;
如果不加“/”
File f = new File(this.getClass().getResource("").getPath());
System.out.println(f);
结果:
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin\com\test
获取当前类的绝对路径;

第二种:

File directory = new File("");//参数为空
String courseFile = directory.getCanonicalPath() ;
System.out.println(courseFile);
结果:
C:\Documents and Settings\Administrator\workspace\projectName
获取当前类的所在工程路径;

第三种:

URL xmlpath = this.getClass().getClassLoader().getResource("selected.txt");
System.out.println(xmlpath);
结果:
file:/C:/Documents%20and%20Settings/Administrator/workspace/projectName/bin/selected.txt
获取当前工程src目录下selected.txt文件的路径

第四种:

System.out.println(System.getProperty("user.dir"));
结果:
C:\Documents and Settings\Administrator\workspace\projectName
获取当前工程路径

第五种:

System.out.println( System.getProperty("java.class.path"));
结果:
C:\Documents and Settings\Administrator\workspace\projectName\bin
获取当前工程路径

 

转载地址:http://ckinl.baihongyu.com/

你可能感兴趣的文章
查看Linux下的文件
查看>>
7mall:4种方法弥补店铺亮点不够多的产品
查看>>
SAP WM LRFMD中Variant参数的影响初探
查看>>
【Xamarin挖墙脚系列:多窗口之间的导航】
查看>>
JPA & Hibernate 注解
查看>>
android 读写sd卡的权限设置
查看>>
Android4: Write Storage权限问题
查看>>
9.9、Libgdx之软键盘
查看>>
LB 负载均衡的层次结构(转)
查看>>
JavaWeb-Servlet技术的监听器-解析与实例-网站在线用户信息与网页点击量
查看>>
【百度地图API】批量地址解析与批量反地址解析(带商圈数据)
查看>>
Flink内存管理源码解读之内存管理器
查看>>
libcurl,多线程,gzip,共享DNS
查看>>
如何通过SQL Server执行系统命令?
查看>>
Java——1个自动拆箱的例子
查看>>
桌面虚拟化为基础的云计算有什么优势?
查看>>
【PMP】学习笔记 三点估算法 挣值管理 折旧法 沟通渠道计算
查看>>
病毒断线:云安全防御大盾全面守候
查看>>
【App】Easyinstall for Android
查看>>
常见几种视频渲染模式介绍
查看>>