技术标签: java读取file文件路径
原标题:Java 中几种获取文件路径的方式
1. 前言
Java开发中我们经常要获取文件的路径,比如读取配置文件等等。今天我们就关于文件的路径和如何读取文件简单地探讨一下。
2. 文件的路径
文件的路径通常有 相对路径与 绝对路径。
2.1 相对路径
以当前文件为基准进行一级级目录指向被引用的资源文件。在 Java 代码中以当前运行的代码所在的位置为参照位置,只要被引用的文件相对于引用的文件的位置不变就可以被读取到。一旦改变相对位置就无法被读取到。
2.2 绝对路径
文件在文件系统中真正存在的路径,是指从硬盘的根目录( Windows为盘符)开始,进行一级级目录指向文件(从根目录一层层读写)。绝对路径顾名思义就是绝对的地址,就像你只要告诉别人你家的门牌号,他就能找到你家。而不是相对位置你告诉他在老王家的隔壁一样。
2.3 路径速记符
我们经常看到一些文件目录路径使用一些符号来简写,这里有必要总结一下(以类 Unix系统为例):
标识符
说明
../
表示当前文件所在的目录的上一级目录
./
表示当前文件所在的目录
/
表示根目录
~
当前用户目录, mac下为 /Users/username ,而 win10下为 c:usersusername
Windows下基本将 / 改为 即可。
3. Java 中读取文件
我们先来声明一个测试路径:
foo
|_src
| |_Test.java
| |_app.yml
其中 Test.java 用来编写读取 app.yml
文章浏览阅读924次。学习python期间,发现 tkinter没有自带的日期选择控件。决定自己的写一个日期控件,费尽周转,终于写了一个自己满意的日期控件。本着人人为我,我为人人的原则,欢迎大家转发,评论,及提出宝贵的建议和意见。严重反感复制别人作品来获取下载积分和关注等行为。1.创建一个自定义DatePicker类,实现下拉日期选择。_self.configure(style='datepicker')
文章浏览阅读605次,点赞13次,收藏10次。InteliJ IDEA 配置Tomcat服务器_idea配置tomcat
文章浏览阅读168次。今天给大家分享一下网络爬虫的基础知识,以及一些优秀的开源爬虫项目。网络爬虫主要是我们在面对新的任务,但自己又没有数据的时候,获取自己想要的数据的一种手段。因此我们有必要掌握一定的爬虫知识,从而更好的准备训练数据集。作者 | 言有三编辑 | 言有三1 前端网页基础在介绍爬虫之前我们先介绍一下网页基础,理解前端网页有利于我们对后面爬虫的学习,它是爬虫的基础之一。1.网页构成通常来说网页由三部分组成,分..._python入门指南 小说 txt
文章浏览阅读5.3w次,点赞22次,收藏20次。在Java编程中NullPointerException是最常见的运行时异常之一,这种异常在我们访问一个空引用变量中的字段、方法或者对象时会触发。_tinyumbrella安装java.lang.nullpointerexception
文章浏览阅读120次。获取微信支付相关信息 审核通过后,可以获取到一些重要的信息,包括商户号(mch_id)、密钥(key)、AppID(appid)、AppSecret(appsecret)等。处理支付回调 在用户支付成功后,微信会将支付结果通知到一个指定的URL中。我们需要在自己的服务器上处理这个支付结果,以便更新订单状态等。注册微信商户号 首先,需要在微信支付平台上注册一个微信商户号。生成签名 在发起支付请求之前,需要对请求参数进行签名。在实际的开发中,需要根据自己的业务需求进行参数的设置和处理。
文章浏览阅读1.5k次,点赞2次,收藏4次。本文首发于公众号『mculover666』,在学习本教程的过程中,可以登录华为云论坛小熊派板块进行发帖交流!1. LiteOS内核的信号量1.1.信号量在多任务操作系统中,不同的任务之间需要同步运行,信号量功能可以为用户提供这方面的支持。信号量(Semaphore)是一种实现任务间通信的机制,实现任务之间同步或临界资源的互斥访问。1.2. 信号量的使用方式信号量可以被任务获取或者申请..._信号量如何控制任务间的同步关系
文章浏览阅读818次,点赞2次,收藏3次。1 问题在使用Kubernetes部署应用时发现有Pod一直不能创建成功,使用kubectl describe pods <pod-name> -n <namespace>得到的结果如下图:从上面的截图中看到,问题出现在给Pod分配IP上,意思是cni0的IP不同于10.244.5.1/24,下面我们进入到knode1中使用ifconfig命令查看IP信息,结果如下:从上图中我们可以看到flannel.1的IP为10.244.5.0,然后使用cat /run/fl_network: failed to set bridge addr: "cni0" already has an ip address differe
文章浏览阅读2.4k次,点赞3次,收藏10次。应用程序升级面临最大挑战是新旧业务切换,将软件从测试的最后阶段带到生产环境,同时要保证系统不间断提供服务。长期以来,业务升级渐渐形成了几个发布策略:蓝绿发布、灰度发布和滚动发布,目的是尽可能避免因发布导致的流量丢失或服务不可用问题。_蓝绿发布
文章浏览阅读3.7k次,点赞3次,收藏8次。动手点关注干货不迷路????播放器简介播放器是西瓜视频等视频类 App 最主要的业务场景,也是最主要的流量入口,其承载包括下层基础播放,上层的各种播放业务:状态栏、弹幕、音量、亮度、评论、点赞、进度、倍速、清晰度、选集、合集、商业化等。西瓜对整个业务播放器做了整体抽象,提供了一套可插拔,可复用的播放器业务框架,包括:视频播放、播控交互、业务拓展。本文播放器是指业务播放器,主..._视频播放软件架构
文章浏览阅读279次。前端模拟列表的数组数据进行筛选_微信h5页面列表前端按列筛选
文章浏览阅读188次。自考选择主考院校一定要弄清楚报考院校毕业的规定,学士学位的规定。有些报考院校会有额外的规定,比如毕业论文优良,或者高于中等水平的平均成绩。
文章浏览阅读552次。1. 对于需要OTA(O to P)升级到P版本的Project,分区layout必须与O版本完全一致,因此,请配置。虽然android P分区表中可以同时看到odmdtbo与dtbo分区,但实际上,ptgen在build生成的。Android O版本odmdtbo.img,在Android P版本改名成dtbo.img。此时build会生成odmdtbo.img,对应下载到odmdtbo分区。此时build会生成dtbo.img,对应下载到dtbo分区。_odmdtbo