开发中经常需要取得日期,而且每次取得日期的时候代码都会重复,所以既然是重复的代码就可以将其定义成一个类,以方便重复调用,但是在操作的时候有一点特别需要注意:如果月会是9月,则应该显示09,但是如果是09的话,则数字肯定会忽略到0。
1.Calendar 类操作 (取得日期时间、中文的日期时间、时间戳)
除了取出日期之外,取得时间戳也是一种比较常见的操作,例如:以下日期:2009-01-16 11:25:34.953
时间戳:20090116112534953
import java.util.* ; // 导入需要的工具包 class DateTime{ // 以后直接通过此类就可以取得日期时间 private Calendar calendar = null ;// 声明一个Calendar对象,取得时间 public DateTime(){ // 构造方法中直接实例化对象 this.calendar = new GregorianCalendar() ; } // 得到的是一个日期:格式为:yyyy-MM-dd HH:mm:ss.SSS public String getDate(){ // 考虑到程序要频繁修改字符串,所以使用StringBuffer提升性能 StringBuffer buf = new StringBuffer() ; buf.append(calendar.get(Calendar.YEAR)).append("-") ;// 增加年 buf.append(this.addZero(calendar.get(Calendar.MONTH)+1,2)).append("-") ;// 增加月 buf.append(this.addZero(calendar.get(Calendar.DAY_OF_MONTH),2)).append(" ") ;// 取得日 buf.append(this.addZero(calendar.get(Calendar.HOUR_OF_DAY),2)).append(":") ;// 取得时 buf.append(this.addZero(calendar.get(Calendar.MINUTE),2)).append(":") ; buf.append(this.addZero(calendar.get(Calendar.SECOND),2)).append(".") ; buf.append(this.addZero(calendar.get(Calendar.MILLISECOND),3)) ; return buf.toString() ; } public String getDateComplete(){ // 得到的是一个日期:格式为:yyyy年MM月dd日 HH时mm分ss秒SSS毫秒 // 考虑到程序要频繁修改字符串,所以使用StringBuffer提升性能 StringBuffer buf = new StringBuffer() ; buf.append(calendar.get(Calendar.YEAR)).append("年") ; // 增加年 buf.append(this.addZero(calendar.get(Calendar.MONTH)+1,2)).append("月") ;// 增加月 buf.append(this.addZero(calendar.get(Calendar.DAY_OF_MONTH),2)).append("日") ;// 取得日 buf.append(this.addZero(calendar.get(Calendar.HOUR_OF_DAY),2)).append("时") ;// 取得时 buf.append(this.addZero(calendar.get(Calendar.MINUTE),2)).append("分") ; // 取得分 buf.append(this.addZero(calendar.get(Calendar.SECOND),2)).append("秒") ; // 取得秒 buf.append(this.addZero(calendar.get(Calendar.MILLISECOND),3)).append("毫秒") ; // 取得毫秒 return buf.toString() ; } public String getTimeStamp(){ // 得到的是一个时间戳 // 考虑到程序要频繁修改字符串,所以使用StringBuffer提升性能 StringBuffer buf = new StringBuffer() ; buf.append(calendar.get(Calendar.YEAR)) ; // 增加年 buf.append(this.addZero(calendar.get(Calendar.MONTH)+1,2)) ; // 增加月 buf.append(this.addZero(calendar.get(Calendar.DAY_OF_MONTH),2)) ; // 取得日 buf.append(this.addZero(calendar.get(Calendar.HOUR_OF_DAY),2)) ; // 取得时 buf.append(this.addZero(calendar.get(Calendar.MINUTE),2)) ; // 取得分 buf.append(this.addZero(calendar.get(Calendar.SECOND),2)); // 取得秒 buf.append(this.addZero(calendar.get(Calendar.MILLISECOND),3)) ; // 取得毫秒 return buf.toString() ; } // 考虑到日期中存在前导0,所以在此处加上补零的方法 private String addZero(int num,int len){ StringBuffer s = new StringBuffer() ; s.append(num) ; while(s.length()<len){ // 如果长度不足,则继续补0 s.insert(0,"0") ; // 在第一个位置处补0 } return s.toString() ; } } public class DateDemo{ public static void main(String args[]){ DateTime dt = new DateTime() ; System.out.println("系统日期:"+dt.getDate()) ; System.out.println("中文日期:"+dt.getDateComplete()) ; System.out.println("时间戳:"+dt.getTimeStamp()) ; } }
输出结果:
系统日期:2013-03-11 17:23:43.174 中文日期:2013年03月11日17时23分43秒174毫秒 时间戳:20130311172343174
2.基于SimpleDateFormat类操作
java.util.Date 已经就是一个完整的日期了,SimpleDateFormat 类中存在一个方法,可以针对于Date重新格式化,那么如果现在将一个表示当前日期的 date 对象通过 SimpleDateFormat 类指定好的模板进行相关的格式化操作的话,那么取得时间就非常的方便了。
相关推荐
在Java编程语言中,`DateFormat` 类是 `java.text` 包中的一个核心类,用于格式化日期和时间。这个类提供了多种方法来解析、格式化以及比较日期和时间。当我们需要从系统获取当前时间并以特定的格式展示时,`...
总的来说,`java.util.Date` 类在获取和表示当前系统时间上是一个基础且实用的工具,虽然在新的Java版本中有了更好的替代品,但理解其工作原理对于理解Java的日期和时间处理至关重要。在实际编程中,根据项目需求和...
本篇将围绕Java中的日期工具类和时间工具类展开讨论,同时会涉及到日期时间的格式化。 首先,Java 8之前,我们主要依赖`java.util.Date`和`java.text.SimpleDateFormat`这两个类来处理日期和时间。`Date`类用于表示...
根据提供的文件信息,本文将对日期工具类进行深入解析,并详细介绍其包含的主要功能与实现方法。此工具类主要涉及到了日期格式化、日期解析、获取当前时间等实用操作。 ### 一、概述 该日期工具类名为 `DateUtil`...
6. **其他操作**:除了上述功能,工具类还可能包含其他实用方法,如检查日期是否在某个范围内、获取当前日期和时间、获取日期的某一部分(如月份、星期几)等。 在提供的压缩包文件`DateUtils.java`中,我们可以...
在实际开发中,我们还可能遇到其他的日期处理场景,如计算两个日期之间的差值、获取当前日期和时间、处理时区差异等。Java 8引入的`java.time`包提供了更现代、更易于使用的日期和时间API,比如`LocalDate`, `...
Java中的日期工具类用于处理日期和时间的计算,根据给定的描述和部分代码内容,以下是一些关键知识点: 1. Java标准库中处理日期和时间的类: 在Java中处理日期和时间的标准类库包括java.util.Date、java.util....
在Java编程语言中,`SimpleDateFormat` 是一个非常重要的日期和时间格式化工具类,它允许程序员以特定的模式来解析和格式化日期。当我们需要从系统获取当前时间并按照自定义格式显示时,`SimpleDateFormat` 就派上了...
`CTime` 是MFC中的一个类,用于表示日期和时间,并提供了各种日期和时间的操作方法。以下是如何使用`CTime`来获取并格式化当前时间: ```cpp CTime t; t = CTime::GetCurrentTime(); CString str; str = t.Format(_...
日历和时间操作类帮助开发者处理日期和时间,例如获取当前时间、计算时间差、格式化日期等。 配置文件操作类方便读取和写入应用程序的配置信息,如XML或ini文件,使得配置信息可以独立于代码进行修改。 条形码类...
9. `getNow()`: 返回当前系统的日期和时间,方便快捷地获取`Date`对象。 10. `getDateStringInUTC(Date date)`: 在UTC时区下格式化日期,这对于跨时区应用特别有用。 在`DateUtil-master`这个压缩包中,应该包含了...
这个工具类通常用于处理日期和时间相关的操作,如获取当前日期、格式化日期字符串、计算两个日期之间的差值等。Java 8引入了`java.time`包,提供了更强大的日期和时间API,但这个工具类可能包含了基于旧的`java....
7. **DateConverter.java**:日期转换工具类,用于日期和时间的处理,如日期之间的转换、格式化输出、解析输入的日期字符串等。在处理日期相关的业务逻辑时非常实用。 8. **Encrypt.java**:加密工具类,包含常见的...
例如,你可以使用`LocalDateTime.now()`获取当前日期时间,或者使用`DateTimeFormatter`进行格式化。 2. **`java.util.concurrent`** Spring Boot也充分利用了并发工具类,如`ExecutorService`, `Future`, `...
`System`类提供了一些系统级别的服务,如获取当前时间、标准输入/输出流操作等;`Math`类则提供了各种数学运算方法。 3. **java.io**: 提供了输入输出流相关的类和接口,用于进行数据的读写操作。例如,...
这个步骤将获取当前系统的日期和时间信息。 3. **配置“获取系统时间”**:在“获取系统时间”的设置中,可以指定需要的时间格式,例如"yyyyMMdd_HHmmss",这会生成类似"20230406_153027"的格式,包含了年、月、日...
它返回一个表示本地计算机上当前日期和时间的`DateTime`对象。例如: ```csharp DateTime currentTime = DateTime.Now; ``` #### 2. `ToString()`方法与格式化 `ToString()`方法可以用来将`DateTime`对象转换为...
文章重点介绍了 `SimpleDateFormat` 类的使用方法,并通过具体的例子演示了如何获取当前日期时间、解析字符串形式的日期时间以及判断某个时间是否处于两个时间点之间。 #### 详细介绍: ##### 1. 日期时间的格式化...
总结,通过以上步骤,我们利用C#的Windows Forms创建了一个简单的日期和时钟显示器,使用TextBox控件显示当前系统的时间,并通过Timer控件实现定时更新。这只是一个基础示例,实际应用中可能需要考虑更多因素,例如...
3. **日期时间工具类**:处理日期和时间是常见需求,此类工具类可能会提供格式化日期、比较日期、获取当前时间戳等功能,简化时间相关的操作。 4. **图片加载工具类**:在Android应用中,图片加载和处理是必不可少...