根据给定文件的信息,我们可以总结出以下关于Java中获取及格式化当前时间的相关知识点: ### 一、使用`java.util.Date`与`java.text.DateFormat`类获取并格式化时间 在Java中,`java.util.Date`类是表示特定时刻的一个瞬时点。`java.text.DateFormat`则提供了一个方便的方法来格式化或解析日期/时间字符串。 #### 1. `java.util.Date`类的基本用法 - **创建Date对象**: - 可以通过`new Date()`构造方法创建一个`Date`对象,它表示的是创建该对象时的时间。 - 也可以通过`new Date(long date)`构造方法,传入一个毫秒值来创建一个具体的日期对象。 #### 2. 使用`java.text.DateFormat`格式化日期 - **DateFormat的实例化**: - `DateFormat`是一个抽象类,我们不能直接创建它的实例。可以使用其子类或者使用静态工厂方法`DateFormat.getDateInstance()`、`DateFormat.getTimeInstance()`、`DateFormat.getDateTimeInstance()`等来获取相应的`DateFormat`实例。 - 这些工厂方法可以根据不同的参数设置返回不同格式的日期时间格式化器。 #### 3. `DateFormat`的样式设置 - `DateFormat`提供了多种样式来格式化日期和时间: - **SHORT**(简短样式):如“16-6-08 8:54”。 - **MEDIUM**(中等样式):如“2008-6-16 20:54:53”。 - **LONG**(长样式):如“2008年6月16日 星期一 20:54:53”。 - **FULL**(完整样式):如“2008年6月16日 星期一 20:54:53 CST”。 ### 二、具体代码示例分析 #### 1. 创建Date对象 ```java Date now = new Date(); ``` 这里创建了一个`Date`对象`now`,它表示当前系统时间。 #### 2. 使用`DateFormat`格式化时间 - **默认格式化样式**: ```java DateFormat d1 = DateFormat.getDateInstance(); // 默认为MEDIUM样式 String str1 = d1.format(now); System.out.println("DateFormat.getDateInstance()格式化时间为" + str1); ``` 输出结果为:“2008-6-16”。这里使用了默认的中等样式。 - **日期和时间格式化**: ```java DateFormat d2 = DateFormat.getDateTimeInstance(); String str2 = d2.format(now); System.out.println("DateFormat.getDateTimeInstance()格式化时间为" + str2); ``` 输出结果为:“2008-6-16 20:54:53”。这里使用了默认的中等样式同时格式化日期和时间。 - **时间格式化**: ```java DateFormat d3 = DateFormat.getTimeInstance(); String str3 = d3.format(now); System.out.println("DateFormat.getTimeInstance()格式化时间为" + str3); ``` 输出结果为:“20:54:53”。这里仅格式化了时间部分。 - **自定义格式化样式**: ```java DateFormat d5 = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL); String str5 = d5.format(now); System.out.println("DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL)格式化时间为" + str5); ``` 输出结果为:“2008年6月16日 星期一 20:54:53 CST”。这里使用了完整样式来格式化日期和时间。 #### 3. 其他常用方法 - **获取当前时间的毫秒数**: ```java long currentTimeMillis = System.currentTimeMillis(); ``` 通过以上知识点和示例代码的学习,我们可以灵活地使用`java.util.Date`和`java.text.DateFormat`来获取并格式化当前时间,以满足各种不同的需求。此外,还可以通过调整`DateFormat`的不同样式来实现更丰富的日期时间格式化效果。









方法一:用java.util.Date类来实现,并结合java.text.DateFormat类来实现时间的格式化,看下面代码:
import java.util.*;
import java.text.*;
//以下默认时间日期显示方式都是汉语语言方式
//一般语言就默认汉语就可以了,时间日期的格式默认为MEDIUM风格,比如:2008-6-16 20:54:53
//以下显示的日期时间都是再Date类的基础上的来的,还可以利用Calendar类来实现见类TestDate2.java
public class TestDate {
public static void main(String[] args) {
Date now = new Date();
Calendar cal = Calendar.getInstance();
DateFormat d1 = DateFormat.getDateInstance(); //默认语言(汉语)下的默认风格(MEDIUM风格,比如:2008-6-16 20:54:53)
String str1 = d1.format(now);
DateFormat d2 = DateFormat.getDateTimeInstance();
String str2 = d2.format(now);
DateFormat d3 = DateFormat.getTimeInstance();
String str3 = d3.format(now);
DateFormat d4 = DateFormat.getInstance(); //使用SHORT风格显示日期和时间
String str4 = d4.format(now);
DateFormat d5 = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL); //显示日期,周,时间(精确到秒)
String str5 = d5.format(now);
DateFormat d6 = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG); //显示日期。时间(精确到秒)
String str6 = d6.format(now);
DateFormat d7 = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT); //显示日期,时间(精确到分)
String str7 = d7.format(now);
DateFormat d8 = DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM); //显示日期,时间(精确到分)

- xczzmn2013-07-15功能实现的很好。谢谢分享。
- WindLu2013-09-05还不错,自己根据情况再封装下就OK
- genghaofang2013-07-15一般好用,还行
- 无常_2013-09-25可以借鉴参考

- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 开发区微软云暨移动应用孵化平台项目方案书.doc
- 公司网络安全事件应急预案.pdf
- 网络购物的利弊.doc
- 2023年雷达机柜插箱插件模块化典型结构CAD工程系统数据库设计.doc
- 2023年C++试题库和参考答案.doc
- 工程造价结算法律专题.ppt
- MATLABGUI程序设计.doc
- 软件公司简介ppt模板.pptx
- 软件实践课程的学习心得体会.doc
- 基于51单片机的红外遥控.doc
- 小学信息技术浙摄版2020五年级下册(2020)-5.算法初步-公开课.pptx
- 最完整的Scrum敏捷软件开发过程PPT课件.ppt
- 云计算试题及答案.doc
- 医院网站SEO优化方案.doc
- 基于嵌入式系统的一种居民小区安全监控系统.docx
- 区域网络团购发展解析论文.doc


