Java中getPath,getAbsolutePath和getCanonicalPath区别

方法说明
getPath以构造路径作为返回值
getAbsolutePath以当前路径+构造路径作为返回值
getCanonicalPath以全路径作为返回值(如果构造路径包含.或…,会进行处理)

需要理解一下Canonical单词含义

在这里插入图片描述
测试示例

public static void main(String[] args) throws IOException {File file1 = new File("./hello.txt");File file2 = new File("/Users/caowei/hello.txt");System.out.println("-----默认相对路径:取得路径不同------");System.out.println(file1.getPath());System.out.println(file1.getAbsolutePath());System.out.println(file1.getCanonicalPath());System.out.println("-----默认绝对路径:取得路径相同------");System.out.println(file2.getPath());System.out.println(file2.getAbsolutePath());System.out.println(file2.getCanonicalPath());SpringApplication.run(Demo4Application.class, args);
}结果如下-----默认相对路径:取得路径不同------
./hello.txt
/Users/caowei/workspace/gitee/demo4/./hello.txt
/Users/caowei/workspace/gitee/demo4/hello.txt
-----默认绝对路径:取得路径相同------
/Users/caowei/hello.txt
/Users/caowei/hello.txt
/Users/caowei/hello.txt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/414818.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

工作220:git clone的时候地址需要改成自己的用户名

git在clone地址的时候用户名 要写成自己 才能clone

Android 检查版本更新 Server后台下载

问题来了,平时开发应用也许你会遇到这种场景:应用启动检查服务器版本,若大于当前版本,则要从网络上下载APK文件,并在Activity上展示进度条。 版本更新,无非是下载apk文件,安装apk。 //其中用到…

error: style attribute '@android:attr/windowEnterAnimation' not found

是的在导入一个依赖的时候又报错了,除了上面这个下面还有几句类似的,解决方法很简单 在gradle.properties这个文件中添加如下一行代码即可: android.enableAapt2false 1这条语句关闭了Aapt2编译。

Java_WEB项目OOM(OutOfMemError内存溢出) MyEclipse配置Jvm内存

前言 刚刚接触的项目是基于SSM,但Tomcat启动时默认的64M内存就总显得不太够。程序运行过程中经常出现OOM(OutOfMemError)。 措施 搜索网上的解决方案,还是比较好解决的,需要给MyEclipse设置Jvm内存大小(即设置Tomcat的Jvm内存大小) : Win…

net.sf.ezmorph.Morpher问题解决

运行web项目,外部访问Servlet报错 报错如下: nested exception is java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher 找不到这个类:net.sf.ezmorph.Morpher 解决方法:复制这些servlet必要的jar包到WEB-INF文件夹下lib文…

工作223:状态管理里面取值

第一步 computed 第二步 取值 computed: {/*GY5 控制新增标题的显隐*/fullTitle() {return this.title "用户";},DepartmentId(){return this.$store.state.department.id},Property(){return this.$store.state.department.property}},created() {/*第二步*/ge…

工作224:当前函数造成

这种报错一般是当前页面的create函数造成的

在VirtualBox中安装BlackArch Linux

作者:荒原之梦安装前的准备 下载系统映像:BlackArch Linux官网下载页面 在本文中我使用的是BlackArch Linux的Live ISO,这样可以减少安装时下载系统的时间。BlackArch的Live ISO文件有7.5G,我们可以使用BT种子来下载,这…

工作225:当前导致name报错

<!-- <el-form ref"form" :model"form" size"medium" :label-width"formLabelWidth" v-loading"loading"><el-form-item label"订单名称" ><el-input v-model"form.order.name" :dis…

Maven的安装以及在Myeclipse上的配置——超详细

在网上找了配置maven的文章&#xff0c;感觉还是有点图文会比较方便查看。 一&#xff1a;Maven的下载安装 准备工作&#xff1a; 1)安装环境 Windows 7 2)需安装JDK ,并配置环境变量(略) 3) Maven版本3.0.5 4)下载地址:http://mirror.bit.edu.cn/apache/maven/maven-3/3.0.5/b…

myeclipse中如何在整个工程中搜索字符串

看图点击即可。项目——>Search——>File 选择搜索条件

myeclipse中添加Oracle数据库

打开Myeclipse后点击如图右上方进入MyEclipse Database Explorer视图 在如图空白处鼠标右击后点选new进入Create a new connection driver界面 在Driver template:中下拉选中Oracle(Thin driver); 在Driver name中填写你希望的名称&#xff1b; 在Connection URL中将后面…

SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

SSM(SpringSpringMVCMybatis)框架环境搭建(整合步骤)(一) 1. 前言 最近在写毕设过程中&#xff0c;重新梳理了一遍SSM框架&#xff0c;特此记录一下。 附上源码&#xff1a;https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下这三个框架分别是干什么…

ORA-28000: the account is locked

首先使用具有sysdba权限的账户登陆&#xff0c;如sys账户和system账户 新建一个sql窗体&#xff0c;并执行语句解锁被锁定的账户&#xff0c;如我这里sgyw账户&#xff1a; alter user sgyw account unlock; 执行成功后再次用这个账户就可以登陆系统了。

工作227:小程序学习1开始布局页面

<template><view class"box u-p-l-35 u-p-r-35 "><view class"title"><text>请选择您要管理的市场</text></view><view :class" [u-flex,u-row-center,{choose_market: selectIndex 0},{market : selectIndex…

工作228:小程序学习2开始布局页面2

<template><view class"box u-p-l-35 u-p-r-35 "><view class"title"><text>请选择您要管理的市场</text></view><view :class" [u-flex,u-row-center,{choose_market: selectIndex 0},{market : selectIndex…

mybatis BindingException: Invalid bound statement (not found)

错误截图 解决措施 此异常的原因是由于mapper接口编译后在同一个目录下没有找到mapper映射文件而出现的。 通常我们在配置SqlSessionFactory时会有如配置 1 <!-- 配置SqlSessionFactory -->2 <bean class"org.mybatis.spring.SqlSessionFactoryBean">…

前端学习(2712):重读vue电商网站32之让菜单栏展开与折叠

通过点击一个按钮&#xff0c;让侧边栏进行展开与折叠。通过 isCollapse 的值来动态变化侧边栏的宽度。 其中 cursor: pointer 设置是为了让鼠标放在折叠与展开处会有一个手指指向。 letter-spacing: 0.2em 是为了让 ||| 有一定间隔

Myeclipse下Maven的配置

1.配置    window--Preferences JDK的配置(执行命令&#xff0c;控制台可能无法输出) -Dmaven.multiModuleProjectDirectory$MAVEN_HOME 新建 Maven Project 转载于:https://www.cnblogs.com/xdalsh/p/8399299.html

前端学习(2713):重读vue电商网站33之实现首页路由重定向

我们想要在登录之后重定向到 /welcome 路径&#xff0c;于是需要添加子路由children 属性&#xff0c;然后设置 redirect重定向到我们的子路由。 然后在我们组件 Home.vue 的右侧主体区域&#xff0c;放置一个路由占位符 router-view 即可。