
Java日期处理:String、Calendar与Date之间的转换详解
下载需积分: 49 | 3KB |
更新于2024-09-13
| 17 浏览量 | 举报
收藏
在Java编程中,字符串(String)、日期(Date)和日历(Calendar)是常见的数据类型,它们之间的相互转换对于处理时间相关的操作至关重要。本文将详细介绍如何在这些对象之间进行格式化的转换。
1. Calendar 转换为 String:
首先,创建一个`SimpleDateFormat`对象,指定所需的日期格式(例如 "yyyy-MM-dd HH:mm:ss")。然后,使用`Calendar`的`getTime()`方法获取当前或指定日期的时间,并通过`format()`方法将其转换为字符串。例如:
```java
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar calendar = Calendar.getInstance(); // 获取当前时间
String dateStr = sdf.format(calendar.getTime()); // 将Calendar对象格式化为字符串
```
2. String 转换为 Calendar:
通过`SimpleDateFormat`的`parse()`方法,可以将符合特定格式的字符串解析成`Date`对象,进一步转换为`Calendar`。比如,将"2010-5-27"转换为Calendar:
```java
String str = "2010-5-27";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(str);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date); // 设置Calendar对象的时间
```
3. Date 转换为 String:
可以直接使用`SimpleDateFormat`的`format()`方法将`Date`对象转换为字符串,示例同上:
```java
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String dateStr = sdf.format(newDate()); // 将Date对象格式化为字符串
```
4. String 转换为 Date:
同样地,`SimpleDateFormat`的`parse()`方法可以将符合格式的字符串解析为`Date`对象:
```java
String str = "2010-5-27";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date birthday = sdf.parse(str); // 将字符串转换为Date对象
```
5. Date 转换为 Calendar:
使用`Calendar`的`setTime()`方法,将`Date`对象设置为`Calendar`中的时间:
```java
Calendar calendar = Calendar.getInstance();
calendar.setTime(new java.util.Date()); // 将Date对象的时间赋值给Calendar
```
6. Calendar 转换为 Date:
最后,`Calendar`的`getTime()`方法会返回一个`Date`对象,代表当前或设置的日期:
```java
Calendar calendar = Calendar.getInstance();
java.util.Date date = calendar.getTime(); // 将Calendar对象转换为Date
```
7. Date 转换为 String(重复了前面的第3步,这里再次强调):
使用`format()`方法将Date对象转换为指定格式的字符串:
```java
System.out.println(sdf.format(newDate()));
```
8. String 转换为 Timestamp:
`Timestamp`是Java中的另一个日期时间类型,可以使用`Timestamp.valueOf()`方法将字符串转换为`Timestamp`:
```java
Timestamp timestamp = Timestamp.valueOf("2011-1-14 08:11:00");
```
9. Timestamp 转换为 String:
通过`Timestamp`的`toString()`方法,可以得到其字符串表示:
```java
String strTimestamp = sdf.format(timestamp);
```
Java中字符串、日期和日历之间的转换涉及到`SimpleDateFormat`、`Date`和`Calendar`等类,正确理解和运用这些转换方法对于处理日期和时间的程序设计至关重要。理解这些基本操作有助于编写出更灵活、可维护的代码。
相关推荐








qaz1900
- 粉丝: 13
最新资源
- IceKey组件:跨版本硬件相关机器码生成器
- DOS环境下INI文件解析及修改技术
- 软件设计师考试必备知识点:08年下半年整理
- 小巧高效的C++ XML解析库:TinyXML深度解析
- C#与.NET框架开发教程详解
- BorlandC在DOS环境下立体按钮的设计实现
- 无需安装的绿色Tomcat5.5.9快速部署解决方案
- 紫轩资料管理大师:全能型资料管理软件
- GoodSync V7.55绿色版多语言工具发布
- SDL开发库文件包含头文件详细解析
- iText实现Hello World文本在PDF中展示
- 生物信息学必备资料和工具大全
- 《C++程序设计教程》钱能版习题答案集锦
- asp+access留言管理系统实现教程
- 初学者指南:JSTL实用示例
- 深入解析msjdbc核心jar包:msbase、mssqlserver与msutil
- LumaQQ源码及库文件压缩包解析
- ERP系统全面教程:概念至实施的全方位解读
- 图像处理经典算法源代码分享
- 北大青鸟S2阶段C#课程PPT全集
- C# 经典类库分享:Seaskyer与WebApp工具集
- 深入探讨ArcInfo在GIS领域的二次开发应用
- Visual C++.NET编程实例精解与特效应用
- 全面解析Spring中文开发手册:IoC与AOP深入理解