首页 > 编程语言 >java 相对路径问题 和绝对路径

java 相对路径问题 和绝对路径

时间:2023-07-03 13:32:55浏览次数:52  
标签:xml java jvm 路径 绝对路径 相对路径 File new properties


小例:

java代码:都可以成功

File file =new File("  ./xml/a.properties") ;
File file =new File("  xml/a.properties") ;

下面就会出错

File file =new File("   /xml/a.properties") ;

java 相对路径问题 和绝对路径_开发工具


 总结:

.为当前目录,即工程名所在文件夹

 

 

下面的当前路径都是你的工程目录

File file =new File("./xml/a.properties") ;中的./xml/a.properties中的.是指当前路径哪么这句就是当前路径下的xml下的a.properties
File file1 =new File("xml/a.properties") ;中的xml/a.properties也代表了它会在当前路径下找xml然后找xml下的a.properties
File file2 =new File("/xml/a.properties") ;而这个中的/xml/a.properties表示绝对路径。

linux下他表示在xml文件下的a.properties而不是当前文件夹下的!

windows的这个路径表示Class文件所在路径

注意:

1. 当前路径:是你的工程目录即dom4jtest文件夹。
2. 根目录: 
     在linux下你这样写就是文件系统的xml目录下的a.properties
     window里面根目录是指 根目录指逻辑驱动器的最上一级目录,它是相对子目录来说的。打开“我的电脑”,双击C盘就进入C盘的根目录,双击D盘就进入D盘的根目录。其它类推。

根目录你的好好看看参考资料参考资料:http://baike.baidu.com/view/1061154.htm

 

我们可以多做几次试验,把”Example.class”移动到不同路径下,同时在那些路径下,执行”java Example”命令启动jvm,我们会发现这个”当前用户目录”是不断变化的,它的路径始终和我们在哪启动jvm的路径是一致的.搞清了这些,我们可以使用相对路径来创建文件,例如:

File file = new File(“a.txt”); File.createNewFile();


假设jvm是在”D:\”下启动的,那么a.txt就会生成在D:\a.txt;此外,这个参数还可以使用一些常用的路径表示方法,例如”.”或”.\”代表当前目录,这个目录也就是jvm启动路径.
所以如下代码能得到当前目录完整路径:

File f = new File(“.”);
String absolutePath = f.getAbsolutePath();
System.out.println(absolutePath);//D:\

最后要说说在eclipse中的情况:Eclipse中启动jvm都是在项目根路径上启动的.
比如有个项目名为blog,
其完整路径为:D:\work\IDE\workspace\blog.
那么这个路径就是jvm的启动路径了.所以以上代码如果在eclipse里运行,则输出结果为” D:\work\IDE\workspace\blog.”

Tomcat中的情况.如果在tomcat中运行web应用,此时,如果我们在某个类中使用如下代码:

File f = new File(“.”);
String absolutePath = f.getAbsolutePath();
System.out.println(absolutePath);


那么输出的将是tomcat下的bin目录.我的机器就是” D:\work\server\jakarta-tomcat-5.0.28\bin\.”,
由此可以看出tomcat服务器是在bin目录下启动jvm的.其实是在bin目录下的” catalina.bat”文件中启动jvm的.

 

http://zhidao.baidu.com/question/294872938.html

标签:xml,java,jvm,路径,绝对路径,相对路径,File,new,properties
From: https://blog.51cto.com/nethub/6610667

相关文章

  • 关于Java RDP协议实现远程桌面连接的开源项目properjavardp
    最近想学一下在Android平台上实现RDP协议远程连接PC,于是在网上找这方面的资料,发现了一个开源的JavaRDP项目,很不错,拿出来和大家分享一下。关于properjavardp的一些说明,可以到这里看看:http://properjavardp.sourceforge.net/ 。1、首先到http://sourceforge.net/projects/properjav......
  • JavaCV的摄像头实战之十三:年龄检测
    欢迎访问我的GitHub这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos本篇概览本文是《JavaCV的摄像头实战》系列的第十三篇,前文《JavaCV的摄像头实战之十二:性别检测》中,借助训练好的卷积神经网络模型开发出了识别性别的应用,今天在前文基础......
  • HTML+CSS+JavaScript基础
    1、HTML(HypertextMarkupLanguage,超文本标记语言),用来向浏览器说明内容的结构、2、DOM(DocumentObjectModel,文档对象模型)指的是HTML标签的层次结构。每一对HTML标签(有的时候是一个标签)都是一个元素。3、CSS(CascadingStyleSheets,层叠样式表),控制DOM元素的视觉外观......
  • JavaScript 拖拽
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title></title> <styletype="text/css"> #box1{ width:100px; height:100px; background-color:red; position:a......
  • JavaScript 事件的绑定
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title></title> <scripttype="text/javascript"> window.onload=function(){ /* *点击按钮以后弹出一个内容 */ //获取按钮......
  • JavaScript 事件的传播
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title></title> <styletype="text/css"> #box1{ width:300px; height:300px; background-color:yellowgreen; } ......
  • 【JAVA基础】JSON转换
    JSON转换json字符串与dto转换publicJsonDataJtMdmResultDataDTOreceiveinfoMQ(StringreqContent){JtMdmMaterialReqDTOjtMdmMaterialReqDTO=newJtMdmMaterialReqDTO();List<JsonDataJtMdmResultDataInfosDTO>jsonDataJtMdmResultDataInfoDTOList......
  • OutOfMemoryError: Java heap space/GC overhead limit exceeded 内存溢出问题排查
    一、背景我开发的给产线使用的工具时不时就无法登录,查看日志基本上都是内存溢出,查看实际内存基本上都占满了JVM设置的内存大小导致的现象就是SpringBoot项目无法登录,导致系统不可用。下面是我的java启动设置。javaw-Xmx6G-XX:+HeapDumpOnOutOfMemoryError-XX:HeapDumpPat......
  • 在JAVA中使用mongoTemplate构造查询条件
    //创建条件对象Criteriacriteria=newCriteria();//3.单个条件查询多个字段(客户编号)if(StringUtils.isNotEmpty(bo.getAdmpId())){criteria.orOperator(Criteria.where("final_uid").is(bo.getAdmpId()),Criteria.where("customer_......
  • JavaScript 事件的委派
    <!DOCTYPEhtml><html> <head> <metacharset="utf-8"/> <title></title> <scripttype="text/javascript"> window.onload=function(){ varu1=document.getElementById("......