Java日期处理:String、Calendar与Date之间的转换详解
需积分: 49 21 浏览量
更新于2024-09-13
收藏 3KB TXT 举报
在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`等类,正确理解和运用这些转换方法对于处理日期和时间的程序设计至关重要。理解这些基本操作有助于编写出更灵活、可维护的代码。
2020-11-08 上传
2020-12-22 上传
2020-08-29 上传
2021-10-03 上传
2011-10-30 上传
2019-07-31 上传
2018-09-19 上传
qaz1900
- 粉丝: 13
- 资源: 11
最新资源
- Ginger Cat Theme & New Tab-crx插件
- 消息果留言板
- 新疆胡杨河市DEM.zip
- Android应用源码之项目启动的时候,弹出的悬浮带有关闭按钮的dialog.zip项目安卓应用源码下载
- 摄影图
- ImageGallery:这是一个简单的图库应用程序,可从API提取图像。 我使用了Image Caching,这就是为什么如果没有Internet连接它可以显示最后一个视图的原因。 重新连接互联网并更新API数据后再次更新视图
- 动态创建和填充树视图
- 小清新网站改版上线倒计时模板
- Lib,图书信息管理系统c语言源码,c语言程序
- redstonecold
- MFAN通用企业网站后台管理系统模板
- 网页截图-crx插件
- OLED_Lib,c语言识别图片文字源码实现,c语言程序
- Learn_git
- 微信小程序优质demo推荐:辩论计时.zip
- 微信小程序之爱物微商城