`
jy00314996
  • 浏览: 75214 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Java 日期公用类

    博客分类:
  • Java
阅读更多
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @author ygq18@tom.com
 *
 * TODO 要更改此生成的类型注释的模板,请转至 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class DateUtil {
    public static final int MILLISECONDS_PER_SECOND = 1000;
    public static final int MILLISECONDS_PER_DAY = 86400000;
    public static final int MILLISECONDS_PER_HOUR = 3600000;
    public static final int MILLISECONDS_PER_MINUTE = 60000;

    /*
     * 日期按指定格式转化成字符串
     */
    public static String dateToStr(String aMask,Date date){
        SimpleDateFormat df = new SimpleDateFormat(aMask);
        String dateAsString = df.format(date);
        return dateAsString;
    }
    public static String getCurrentTime(){
        return getToday("HH:mm:ss");
    }
    /*
     * 按指定格式返回当天日期的字符串形式
     */
    public static String getToday(String aMask){
        Date today = new Date();
        String todayAsString = dateToStr(aMask,today);
        return todayAsString;
    }
    /*
     * 按默认格式返回当天日期的字符串形式
     */
    public static String getToday(){
        return getToday("yyyy-MM-dd");
    }
    /*
     * 把字符串按指定格式转化成Date
     */
    public static Date strToDate(String aMask,String strDate) {
        SimpleDateFormat format = new SimpleDateFormat(aMask);
        Date date = null;
        try {
            date = format.parse(strDate);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return date;
    }
    /*
     * 把字符串按默认格式转化成Date
     */
    public static Date strToDate(String strDate) {
        return strToDate("yyyy-MM-dd",strDate);
    }
    /*
     * 日期相减得到的毫秒数
     */
    public static long sub(String aMask,String strBeginDate, String strEndDate) {
        long dateRange=0;
        int num = 0;
        Date beginDate = strToDate(aMask,strBeginDate);
        Date endDate = strToDate(aMask,strEndDate);
        dateRange = endDate.getTime() - beginDate.getTime();
        return dateRange;
    }
    /*
     * 日期相减得到的毫秒数
     */
    public static long sub(String strBeginDate, String strEndDate) {
        long dateRange=0;
        int num = 0;
        Date beginDate = strToDate(strBeginDate);
        Date endDate = strToDate(strEndDate);
        dateRange = endDate.getTime() - beginDate.getTime();
        return dateRange;
    }
    /*
     * 日期相减得到的天数
     */
    public static String subToDay(String strBeginDate, String strEndDate){
        String dayNum = "";
        long dateRange = sub(strBeginDate,strEndDate);
        dayNum = ""+(dateRange/MILLISECONDS_PER_DAY);
        return dayNum;
    }
    /*
     * 日期相减得到的秒数
     */
    public static String subToSecond(String aMask,String strBeginDate, String strEndDate){
        String secNum = "";
        long dateRange = sub(aMask,strBeginDate,strEndDate);
        secNum = ""+(dateRange/MILLISECONDS_PER_SECOND);
        return secNum;
    }
    public static String subToSecond(String strBeginDate, String strEndDate){
        String secNum = "";
        long dateRange = sub("yyyy-MM-dd HH:mm:ss",strBeginDate,strEndDate);
        secNum = ""+(dateRange/MILLISECONDS_PER_SECOND);
        return secNum;
    }
    public static void main(String[] args) {
        System.out.println("按默认格式返回今天日期:"+getToday());
        System.out.println("按指定格式返回今天日期:"+getToday("yyyy-MM-dd HH:mm:ss"));
        System.out.println("日期相差天数:"+subToDay("2006-08-02 23:02:01", "2006-08-03 01:02:01"));
        System.out.println("日期相差秒数:"+subToSecond("2006-08-02 23:02:01", "2006-08-03 01:02:01"));
        System.out.println("当前时间:"+getCurrentTime());
    }
}

 

分享到:
评论

相关推荐

    封装java常用工具的类

    6. **时间类**:Java 8引入了新的日期和时间API(java.time包),它提供了更直观、更易于使用的日期、时间、时区处理功能,替代了之前的java.util.Calendar和java.util.Date。 7. **数据库连接池**:例如,C3P0、...

    Java开发技术大全(500个源代码).

    common.java 一个公用类 derive.java 一个测试用子类 differ.java 测试静态方法与实例方法之间的区别 forefather.java 一个简单的基类 grandson.java 上面这个类的子类 hasConstructor.java 拥有构造器的类 ...

    Hutool (Java基础工具类).rar

    Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间 一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成各种Util工具类,同时...

    java项目中公共模块内容详细

    5. **系统日期**:获取系统当前日期和时间通常使用`java.time`包的`Clock`类,它可以提供系统时钟、固定时钟或模拟时钟。`ZonedDateTime`可以获取带时区的日期时间,`Instant`则表示从Unix纪元开始的秒数。 6. **...

    watson:用Java编写的日常工作中的一些公用程序utils代码

    1. **Java工具类库**: 在Java开发中,工具类库通常是一系列静态方法集合,提供了各种通用功能,如字符串操作、日期时间处理、数学计算、IO操作等。Watson项目可能包含了这些常见的工具类,帮助开发者快速实现常见...

    JAVA英语单词.pdf

    * public:公共的、公用的 * static:静的、静态的、静止的 * void:空的 * main:主要的、重要的 * class:类 * system:系统、方法 * out:出现、出外 * print:打印 * eclipse:Java编程软件 这些单词都是Java...

    公用房管理系统(vs2005 MFC)

    8. **设备管理**:登记和追踪设备的使用情况,如设备型号、购置日期、维护记录等,确保设备的正常运行。 9. **实验室管理**:整合实验室资源,包括实验室的设备配置、实验项目,以及实验室的预约和使用情况。 此外...

    java开发jar汇总

    2. **类库共享**:开发者可以创建包含公用类的JAR文件,供多个项目共同使用,减少代码重复。 3. **安全**:JAR文件可以被数字签名,确保代码来源的可信性,防止恶意篡改。 4. **运行效率**:Java虚拟机(JVM)可以...

    21道JAVA基础编程练习题

    上述文件中列出了一系列Java编程练习题,这些题目覆盖了Java编程的基础知识,适合初学者进行编程练习。下面我将详细解释每个练习题的知识点。 1. 兔子繁殖问题(斐波那契数列) 题目描述了著名的斐波那契数列问题,...

    宾馆管理系统。博客系统。OA系统用到的公用JAR2

    JAR(Java Archive)是Java平台特有的归档文件格式,它用于收集多个类文件和其他资源,如图片、声音或文本文件,以便一起部署。JAR文件的主要作用有:封装源代码、压缩代码以减少传输大小、提供版本控制、执行安全...

    android-commons:Android公用程式(例如Java端的Apache公用程式)

    3. **DateUtils**: 日期和时间操作的工具类,提供了格式化日期、比较日期、解析日期等功能,使得日期处理更为便捷。 4. **FileUtils**: 文件操作类,包括创建、删除、移动、重命名文件,以及目录操作,有助于简化...

    ArcGIS Server Java ADF案例教程

    - **UtilityObjects的使用**:UtilityObjects是ADF中用于封装公用功能的对象,如日期处理、字符串操作等。合理利用UtilityObjects,可以显著提高应用程序的开发效率和代码质量。 #### 结语 ArcGIS Server Java ADF...

    java英语单词学习

    - **public** ['pʌblik]:表示“公共的”或“公用的”,在 Java 中用于修饰类、方法或变量,表明它们可以被任何其他类访问。 - **static** ['stætik]:意为“静的”、“静态的”或“静止的”,用来修饰类、方法或...

    Java开发技术大全 电子版

    Java开发技术大全 电子版 第1篇Java基础知识入门....14.13.14“时间/日期”菜单的响应代码570 14.13.15“自动换行”菜单的响应代码570 14.13.16“查找…”菜单的响应代码570 14.13.17“设置字体…”菜单...

    JAVA高级工程师-个人简历模板.docx

    第一段工作经历中,主要负责总参61所公用数据支撑与信息服务系统的开发和维护,担任JAVA高级软件开发工程师一职,并负责门户系统的建设和信息发布系统的开发。第二段工作经历中,主要负责神州泰岳Ultra-IAM产品的...

    大学生java实习总结报告范文.pdf

    在项目开始前,明确每个人的职责,确保公用资源的统一管理,可以提高效率并减少冲突。作为组长,不仅要完成个人任务,还需要协调团队合作,确保项目的顺利进行。 2. **功能设计与测试心得** - **登录功能**:登录...

    开发者突击公共lab1

    在描述中提到的"公用类1",可能是指一个通用的工具类,包含了一系列常用的方法,例如字符串处理、日期时间操作、数学计算等,供开发者在编写代码时调用。这样的类通常被设计成可以复用的,以提高代码的可维护性和...

    personal-utils:只是一些个人公用事业

    《个人公用事业:Java编程中的实用工具》 在IT领域,个人公用事业指的是开发者为了提高工作效率,自定义的一系列小型工具或库。这些工具通常针对特定任务,如数据处理、文件操作、日志记录等,旨在简化编程过程,...

    java面试题

    某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中加密,规则如下:每位数字加5,除以10取余代替该数字,再将第一位和第四位互换,第二位和第三位互换。给出具体的实现代码。 **解题思路**: - 将输入...

    Duree_de_vol:程序java qui calcul lesduréede vol

    3. **日期和时间处理**:Java提供`java.time`包,包含`LocalDateTime`, `Duration`等类,可以用来处理日期、时间以及时间间隔,如计算飞行时间。例如,用户可能输入出发时间和到达时间,程序将两者相减得到飞行时间...

Global site tag (gtag.js) - Google Analytics