java故事_Java中一些文件的故事,让我来讲一讲

今天,我们来一起看看File这个类。是干嘛用的呢?

-----处理文件。

148201018_1_20181127022838372

打开今日头条,查看更多精彩图片

先看看File的位置所在。Java.io这个包中。IO的话。我们知道是和文件打交道的。程序加载外面的文件。然后把程序中的文件下载下来。所以我们File也是这方面的。

先看下File的exists()方法。是判断文件在不在。

148201018_2_20181127022838513

那如果文件不存在呢?

创建:

可以用到下面这几个的创建方法

createNewFile() 返回的也是一个Boolean。

mkdri(): 创建一个文件夹。如果不存在就创建

注意:如果没有写盘符的话。例如这样的:

148201018_3_20181127022838622

这个创建的文件夹是在项目下。就是和src一个级别。打开项目后就能找到这个目录。

148201018_4_20181127022838716

mkdirs():创建多级目录。

148201018_5_20181127022838825

148201018_6_20181127022838919

可以看到不是给test添加一个aaa目录。而是从新添加一个aaa目录。然后里面有个test。

修改:renameTo():

148201018_7_2018112702283913

删除:delete();

可以删除文件,也可以删除文件夹。删除的时候一定要小心。直接进行删除了,

(老司机们应该都知道 rm -rf 的后果)

并不需要走回收站。

148201018_8_20181127022839122

刚我们创建的这个带子文件夹的aaa。要删除的时候如果test里面没有文件了。就把test删除掉。如果有文件。是删除不掉的。返回的false

下面看看几个判断:

IsDirectory(): 是否是文件夹

isFile(): 是否是文件

exists(): 是否存在

canRead(): 是否可读

canWrite(): 是否可写

isHidden(): 是否隐藏

获取:

getAbsolutePath(): 获取绝对路径。

getPath(): 获取路径

getName(): 获取名字

148201018_9_20181127022839216

148201018_10_20181127022839310

length(): 获取长度,字节数

lastModified(): 获取最后一次修改的时间

list(): 获取指定目录下的所有文件或者文件夹的名称数组

返回的是String[]

148201018_11_20181127022839404

148201018_12_20181127022839497

148201018_13_20181127022839591

listFiles(): 获取指定目录下的所有文件或者文件夹的File数组

返回的是File[]

148201018_14_20181127022839685

148201018_15_20181127022839794

输出指定目录下指定后缀的文件名

用到的是endsWith();

148201018_16_20181127022839888

输出结果:

148201018_17_20181127022839997

项目中的使用:

我们在项目中经常会使用到获取路径。可以使用我们File中的getAbsolutePath(),getPath()这两个方法。获取到文件后,就可以创建Java的流。然后去做想做的事。File类更多的还是和流相结合的使用。比如我们项目在生产环境中,不可缺少的就是代码日志。我们可以通过日志的文件位置,然后封装成File。然后创建流。加载到项目中。而且可以在项目中测试辛苦编写的代码是否正确。如果出现错误。我们可以用过日志的打印结果。进一步的定位到错误。进行修改。非常方便。

File在项目中还有更多的使用。希望大家能不吝啬的分享出来。大家一起学习,进步。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值