Java学习笔记--监视目录变化
publicclass目录监视服务的使用示例{
publicstaticvoid main(String[] args) throws IOException,InterruptedException{
//WatchService接口的实现对象是由工厂方法创建的,需要从表示文件系统的java.nio.file.FileSystem类对象中得到。
WatchService service =FileSystems.getDefault().newWatchService();
//被监视的对象
Path path =Paths.get("C:/Users/aming/Desktop");
//注册监听事件
//包括创建或者重命名(ENTRY_CREATE),更新(ENTRY_MODIFY)和删除(ENTRY_DELETE)
path.register(service,StandardWatchEventKinds.ENTRY_CREATE,StandardWatchEventKinds.OVERFLOW);
while(true){
WatchKey key = service.take();
//pollEvents方法获取所有的事件
for(WatchEvent<?> event:key.pollEvents()){
//context方法的返回值表示的是事件上下文信息
//在于目录内容变化相关的事件中,上下文信息是一个Path接口的实现对象
Path createPath =(Path)event.context();
//resolve方法:将当前路径当成父目录,而把参数中的路径当成子目录或者是其中的文件
createPath = path.resolve(createPath);
//获得文件的大小
long size =Files.size(createPath);
System.out.println(createPath +"==>"+ size);
}
//在处理完一个WatchKey接口实现对象中的全部事件后
//需要通过reset方法来进行重置。
//只有重置之后,新的产生的同类事件才有可能从WatchService接口实现对象中再次获取。
key.reset();
//如果希望取消对一个目录的监视
//只需要调用对应的WatcKey接口实现对象的cancel方法即可
key.cancel();
}
}
}
Java学习笔记--监视目录变化的更多相关文章
- Java学习笔记4
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- java学习笔记(2)注释、public lcass、class、标识符、字面值、变量
java学习笔记(1)中说过了java的一些基础知识,发展史,特点,编译和运行过程,配置环境变量等,接下来开始介绍java的语法等只是点 关于java源程序中的注释: *什么是注释?注释的作用是什么 ...
- java学习笔记之OOP(二)
java学习笔记二.面向对象[OOP]Object Oriented Programming 一.三大特性: 1.封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式,将变化隔离,便于使用,提高复用 ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- Java学习笔记——File类之文件管理和读写操作、下载图片
Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...
- thinkphp学习笔记1—目录结构和命名规则
原文:thinkphp学习笔记1-目录结构和命名规则 最近开始学习thinkphp,在下不才,很多的问题看不明白所以想拿出来,恕我大胆发在首页上,希望看到的人能为我答疑解惑,这样大家有个互动,学起来快 ...
- 【Java学习笔记之二十六】深入理解Java匿名内部类
在[Java学习笔记之二十五]初步认知Java内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意 ...
- Java学习笔记心得——初识Java
初识Java 拿到这本厚厚的<Java学习笔记>,翻开目录:Java平台概论.从JDK到TDE.认识对象.封装.继承与多态...看着这些似懂非懂的术语名词,心里怀着些好奇与担忧,就这样我开 ...
随机推荐
- fgets()函数以及fputs()函数
fgets() fgets() 该函数是一个文件操作相关的函数 暂时使用这个函数可以从键盘接收一个字符串,保存到字符数组中 原来接收字符串保存到数组中的方法: char str[50]; 1) sca ...
- Android打开其它应用程序
PackageManager pm = getPackageManager(); Intent i = pm.getLaunchIntentForPackage(packageName); start ...
- ActiveXObject函数详解(转自http://eyesinthesky.iteye.com/blog/1560033)
什么是 ActiveX 控件? ActiveX 控件广泛用于 Internet.它们可以通过提供视频.动画内容等来增加浏览的乐趣.不过,这些程序可能出问题或者向您提供不需要的内容.在某些情况下,这些程 ...
- [刷题]算法竞赛入门经典(第2版) 5-10/UVa1597 - Searching the Web
题意:不难理解,照搬题意的解法. 代码:(Accepted,0.190s) //UVa1597 - Searching the Web //#define _XIENAOBAN_ #include&l ...
- 状态(State)模式
状态模式,又称状态对象模式(Pattern of Objects for States),状态模式是对象的行为模式.状态模式允许一个对象在其内部状态改变的时候改变其行为.这个对象看上去就像是改变了它的 ...
- 域名系统DNS和FTP
域名系统概述 域名系统DNS(Domain Name System)是英特网使用的命名系统,用于把便于人们使用机器名字转化为IP地址. 为什么机器在处理IP数据报时要使用IP地址而不使用域名呢?IP地 ...
- HotSpot的算法实现
1.枚举根节点 可达性分析中从GC Roots节点找引用,可作为GC Roots的节点主要是全局性的引用与执行上下文中,如果要逐个检查引用,必然消耗时间.另外可达性分析对执行时间的敏感还体现在GC停顿 ...
- 广义后缀树(GST)算法的简介
导言 最近软件安全课上,讲病毒特征码的提取时,老师讲了一下GST算法.这里就做个小总结. 简介 基本信息 广义后缀树的英文为Generalized Suffix Tree,简称GST. 算法目的 ...
- Spring+SpringMVC+MyBatis深入学习及搭建(一)——MyBatis的基础知识
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6812311.html 1.对原生态jdbc程序中问题总结 1.1 jdbc程序 需求:使用jdbc查询mys ...
- 数塔,杭电oj-2048
原题地址:http://i.cnblogs.com/EditPosts.aspx?postid=4077291 [Problem Description] 在讲述DP算法的时候,一个经典的例子就是数塔 ...