java path file比较_java7新特性File和Path两个类

这两个类的加入使得对普通文件的处理更加快捷。让程序猿从FileOutputStream,BufferedInputStream等复杂的流操作中解救出来。

Path p=Paths.get("F:\\emp.txt");

byte[] by=Files.readAllBytes(p);

String con=new String(by,"UTF-8");两句话便完成了对一个文件的读入,第三句话是将文件当字符串读入。

对于文件的移动,也变得简单了不少。复制也同理,将move改为copy。

值得注意的是:如果目标文件已经存在,则会移动失败,若是要覆盖原有文件,可以使用REPLACE_EXISTING选项。

Files.move(from, to,StandardCopyOption.REPLACE_EXISTING);

若是想要复制所有文件属性,可以使用COPY_ATTRIBUTES.

Path from=Paths.get("F:\\emp.txt");

Path to=Paths.get("G:\\move.txt");

Files.move(from, to);

删除文件:Files.delete(path);若目标文件不存在抛异常。Files.deleteIfExists(path);若目标不存在会返回false。

创建新目录:Files.createDirectory(path);

创建新文件:Files.createFile(path);

Files类还可以获取文件信息。

如函数static boolean exists(path);等,详情见官方文档:官方Files介绍

Files可以高效地获取一个目录中所有文件(相对于File的方法高效地多)

DirectoryStreamentries = Files.newDirectoryStream(path);

for(Path entry:entries)

{

System.out.println(entry);

}并且,若是想要过滤文件也是可以的

比如 Files.new DirectorStream(path,"*.java");

这算是Glob模式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值