java日期处理

来源:互联网 发布:linux打开图形界面命令 编辑:程序博客网 时间:2024/06/06 04:01

常见的关于日期的问题


与之有关的类(详细信息查看API文档)


它们之间的关系:

Calendar类为扩充Date类而产生。

java.sql.Date、Time、Timestamp类用于处理数据库的日期,继承于java.util.Date.

java.sql.Date只有年月日;java.sql.Time只有时分秒;java.sql.Timestamp全部含有。


实例代码:

package com.java;import java.sql.Timestamp;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;import java.util.TimeZone;/** * 1.如何获取当前日期  * 2.如何对日期进行格式化  * 3.如何将一个字符串转化为日期  * 4.如何处理来自数据库的时间请见“JDBC日期处理” * */public class TestDateAndTime {public static void main(String[] args) {// TODO Auto-generated method stubDate d = new Date();SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");System.out.println("格式化的Date:" + sdf.format(d));Calendar c = Calendar.getInstance();c.setTime(d); // 使用给定的 Date 设置此 Calendar 的时间System.out.println("Calendar:" + c.get(Calendar.YEAR) + "年"+ (c.get(Calendar.MONTH) + 1) + "月");System.out.println("Calendar.getTime():" + c.getTime());long s = System.currentTimeMillis(); // 当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数。System.out.println("格式化的System.currentTimeMillis():" + sdf.format(s));System.out.println();String st = "2017-01-23 12:30:50.0";// 不是此格式可用正则表达式转为此格式Timestamp ts = Timestamp.valueOf(st);// 使用Timestamp.valueOf()方法对字符串进行转换System.out.println("字符串表示的时间:" + ts);Calendar cJapan = new GregorianCalendar(TimeZone.getTimeZone("Japan"));// 获取指定时区的格林威治日历System.out.println("日本时区的格林威治时间(小时):"+ cJapan.get(Calendar.HOUR_OF_DAY));}}/* 结果:格式化的Date:2017年10月23日21时33分27秒Calendar:2017年10月Calendar.getTime():Mon Oct 23 21:33:27 CST 2017格式化的System.currentTimeMillis():2017年10月23日21时33分27秒字符串表示的时间:2017-01-23 12:30:50.0日本时区的格林威治时间(小时):22 */


原创粉丝点击