Java判断时间段内文件是否更新的方法

本文实例讲述了Java判断时间段内文件是否更新的方法。分享给大家供大家参考。具体实现方法如下:

1.定时器

代码如下:

private Timer timer; 
 
/**
* 简易定时器
* @param delay  多久后开始执行。毫秒
* @param period 执行的间隔时间。毫秒
*/ 
public void test(long delay, long period) { 
        timer = new Timer(); 
        timer.schedule(new TimerTask() { 
            public void run() { 
                //你 的 操作方法 
                System.out.println(System.currentTimeMillis()); 
            } 
        }, delay, period); 
}

2.深化版

代码如下:

package classloader; 
/**
 * @author vma
 */ 
// 自定义一个类加载器 
public class DynamicClassLoader extends ClassLoader { 
    public Class<?> findClass(byte[] b) throws ClassNotFoundException { 
        return defineClass(null, b, 0, b.length); 
    }

package classloader; 
import java.io.File; 
import java.io.FileInputStream; 
import java.io.IOException; 
/**
 * @author vma
 */ 
public class ManageClassLoader { 
    DynamicClassLoader dc =null;

Long lastModified = 0l; 
    Class c = null; 
    //加载类, 如果类文件修改过加载,如果没有修改,返回当前的 
    public Class loadClass(String name) throws ClassNotFoundException, IOException{ 
     if (isClassModified(name)){ 
        dc =  new DynamicClassLoader(); 
      return c = dc.findClass(getBytes(name)); 
     } 
     return c; 
    } 
    //判断是否被修改过 
    private boolean isClassModified(String filename) { 
        boolean returnValue = false; 
        File file = new File(filename); 
        if (file.lastModified() > lastModified) { 
            returnValue = true; 
        } 
        return returnValue; 
    } 
       // 从本地读取文件 
       private byte[] getBytes(String filename) throws IOException { 
        File file = new File(filename); 
        long len = file.length(); 
        lastModified = file.lastModified(); 
        byte raw[] = new byte[(int) len]; 
        FileInputStream fin = new FileInputStream(file); 
        int r = fin.read(raw); 
        if (r != len) {
            throw new IOException("Can't read all, " + r + " != " + len);
        }
        fin.close();
        return raw;
    }
}

3.thread方法

代码如下:

class Thread1 extends Thread{
  public void run(){
//调用业务方法(查看文件是否改变)
Thread.currentThread().sleep("100000");
}

希望本文所述对大家的Java程序设计有所帮助。

(0)

相关推荐

  • java使用正则表达式判断邮箱格式是否正确的方法

    本文实例讲述了java使用正则表达式判断邮箱格式是否正确的方法.分享给大家供大家参考.具体如下: import java.io.*; public class CheckEmail { public static boolean checkEmail(String email) {// 验证邮箱的正则表达式 String format = "\\p{Alpha}\\w{2,15}[@][a-z0-9]{3,}[.]\\p{Lower}{2,}"; //p{Alpha}:内容是必选的,和

  • java判断远程服务器上的文件是否存在的方法

    在做数据文件导入到   LEFTII   中是遇到一个文件,在做导入的时候有时候生成的原始文件可能不存在,现在通过加一个判断,判断文件是否存在,起初以为简单的判断文件   file.exists()   存不存在就行了,但是后来事实证明这个只能判断本地的文件是否存在. 这里我们通过一个巧妙的方法告诉大家,就是把远程的文件共享到本地来,通过电脑的衍射可以轻而易举的解决这个问题 过程如下 然后在下面的步骤输入用户名,密码,这样就可以通过判断本地是否存在这个文件就搞定了.

  • java判断一个文件是否为二进制文件的方法

    本文实例讲述了java判断一个文件是否为二进制文件的方法.分享给大家供大家参考.具体如下: public static boolean isBinary(File file) { boolean isBinary = false; try { FileInputStream fin = new FileInputStream(file); long len = file.length(); for (int j = 0; j < (int) len; j++) { int t = fin.rea

  • Java判断两个日期相差天数的方法

    本文实例讲述了Java判断两个日期相差天数的方法.分享给大家供大家参考.具体如下: import java.util.Calendar; public class DateDifferent{ public static void main(String[] args){ Calendar calendar1 = Calendar.getInstance(); Calendar calendar2 = Calendar.getInstance(); calendar1.set(2007, 01,

  • Java判断IP地址为内网IP还是公网IP的方法

    本文实例讲述了Java判断IP地址为内网IP还是公网IP的方法.分享给大家供大家参考.具体分析如下: tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下: 10.0.0.0/8:10.0.0.0-10.255.255.255 172.16.0.0/12:172.16.0.0-172.31.255.255 192.168.0.0/16:192.168.0.0-192.168.255.255 那么,直接上代码吧: 复制代码 代码如下: public static boolea

  • Java编程实现判断网上邻居文件是否存在的方法

    本文实例讲述了Java编程实现判断网上邻居文件是否存在的方法.分享给大家供大家参考,具体如下: 由于java不支持通过//192.168.19.168/fz/OK/张立辰-国画/jpg/ZLC-鱼1-X.jpg这种路径 需要将路径映射为本地盘,则可 package test; import java.io.File; public class FileCheck { /** * @param args */ public static void main(String[] args) { Str

  • Java判断时间段内文件是否更新的方法

    本文实例讲述了Java判断时间段内文件是否更新的方法.分享给大家供大家参考.具体实现方法如下: 1.定时器 复制代码 代码如下: private Timer timer;    /** * 简易定时器 * @param delay  多久后开始执行.毫秒 * @param period 执行的间隔时间.毫秒 */  public void test(long delay, long period) {          timer = new Timer();          timer.sc

  • Python 监测文件是否更新的方法

    主要逻辑是判断文件的最后修改时间与创建时间是否在秒级别上一致,此代码适用于Python 2. import time import os #Read fime name FileName='D:/scapegoat/xx.csv' #print file creation time print time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(os.stat(FileName).st_ctime)) #print file modified tim

  • C#编程实现统计文件夹内文件和隐藏文件的方法示例

    本文实例讲述了C#编程实现统计文件夹内文件和隐藏文件的方法.分享给大家供大家参考,具体如下: C#统计文件夹内的文件,包括隐藏文件,显示那个隐藏文件...隐藏的..为什么别人要隐藏呢.. 将程序放在任何文件夹内,点击"当前文件夹",可以获取文件夹所在的路径,也可以直接输入路径,再点击"显示文件",就可以看到效果了,下面的状态栏实现统计功能 using System; using System.Collections.Generic; using System.Co

  • java根据List内对象的属性排序方法

    方法一:实现Comparator接口,并重写compare方法 实体类代码: import java.util.Comparator; /** * 学生类 方法一 * 实现Comparator接口 * 并重写compare方法 * @author liaot * */ public class Student implements Comparator<Student>{ private String name; //姓名 private int age; //年龄 //重写 比较方法 本次例

  • java通过url下载文件并输出的方法

    实例如下所示: controller: @RequestMapping(value = "/{loanid}/{atmtType}") public void doGet(@PathVariable("loanid") String loanid,@PathVariable("atmtType") String atmtType, HttpServletRequest req,HttpServletResponse response) { Map

  • Java实现自动压缩文件并加密的方法示例

    本文实例讲述了Java实现自动压缩文件并加密的方法.分享给大家供大家参考,具体如下: 实现功能:自动压缩并加密 /** * * @Title: zipFilesAndEncrypt * @Description: 将指定路径下的文件压缩至指定zip文件,并以指定密码加密,若密码为空,则不进行加密保护 * @param srcFileName 待压缩文件路径 * @param zipFileName zip文件名 * @param password 加密密码 * @return * @throws

  • Python采集代理ip并判断是否可用和定时更新的方法

    网上有很多免费的ip地址,都是可以使用的,但是如果手动来获取太麻烦,这里通过Python自动抓取,可以批量获取. 代码如下: # -*- coding: utf-8 -*- import re import urllib2 import json import os import time import socket class ProxyIp(object): def __init__(self): self.path = os.path.split(os.path.realpath(__fi

  • Java判断List中有无重复元素的方法

    Talk is cheap, show me the code: import java.util.ArrayList; import java.util.HashSet; import java.util.List; /** * 通过简单的代码判断List中是否包含相同元素 * @author wei 2017年7月10日 下午8:34:47 */ public class ListHaveRepeat { public static void main(String[] args) { Li

随机推荐