`
wxinpeng
  • 浏览: 590821 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

时间处理类

阅读更多
/**
 * 时间处理类
 */
package org.boss.web;
import java.util.Calendar;
import java.util.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class CalendarDemo {
	private Calendar calendar;
	private Date date;
	private SimpleDateFormat simpleFormat;
	public CalendarDemo() {
		calendar = Calendar.getInstance();
		date = new Date();
		calendar.setTime(date);
		calendar.setFirstDayOfWeek(calendar.MONDAY);
	}

	/**
	 * 获取日期的年的值,数字型。
	 */
	public String getYear() {
		return String.valueOf(calendar.get(calendar.YEAR));
	}

	/**
	 * 获取日期的月的值,数字型。
	 */
	public String getMonth() {
		java.text.DecimalFormat format=new java.text.DecimalFormat("00");
		String month=format.format(calendar.get(calendar.MONTH) + 1);
		return month;
	}

	/**
	 * 获取日期的日的值,数字型。
	 */
	public String getDay() {
		java.text.DecimalFormat format=new java.text.DecimalFormat("00");
		String day=format.format(calendar.get(calendar.DATE));
		return day;
	}

	/**
	 * 获取日期的星期的值,数字型。
	 */
	public int getWeekOfMonth() {
		return calendar.get(calendar.WEEK_OF_MONTH);
	}

	/**
	 * 获取时间的小时的值,数字型。
	 */
	public String getHour() {
		java.text.DecimalFormat format=new java.text.DecimalFormat("00");
		String hour=format.format(calendar.get(calendar.HOUR_OF_DAY));
		return hour;
	}

	/**
	 * 获取日期的分钟的值,数字型。
	 */
	public String getMinute() {
		java.text.DecimalFormat format=new java.text.DecimalFormat("00");
		String minute=format.format(calendar.get(calendar.MINUTE));
		return minute;
	}

	/**
	 * 获取日期的秒钟的值,数字型。
	 */
	public String getSecond() {
		java.text.DecimalFormat format=new java.text.DecimalFormat("00");
		String second=format.format(calendar.get(calendar.SECOND));
		return second;
	}
	/**
	 * 获取一个星期中的某天.文字型。
	 * @return
	 */
	public String getDayOfWeek(){
		int week= calendar.get(calendar.DAY_OF_WEEK);
		String strweek=null;
		switch(week){
		case 0:
			strweek="一";
			break;
		case 1:
			strweek="二";
			break;
		case 2:
			strweek="三";
			break;
		case 3:
			strweek="四";
			break;
		case 4:
			strweek="五";
			break;
		case 5:
			strweek="六";
			break;
		case 6:
			strweek="日";
			break;
			default:
		}
		return strweek;
	}
	
	public String getDate() {//将时间转成字符型
		return String.valueOf(this.getYear()) + "-"
				+ String.valueOf(this.getMonth()) + "-"
				+ String.valueOf(this.getDay()) + "  "
				+ String.valueOf(this.getHour()) + ":"
				+ String.valueOf(this.getMinute()) + ":"
				+ String.valueOf(this.getSecond());
	}
	
	
	public Date stringToDate(String strDate){//将字符转成时间
		try{
			simpleFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//日期的字符强制转换
			date=simpleFormat.parse(strDate);
			return date;
		}catch(ParseException e){
			e.printStackTrace();
		}
		return null;
	}

	public String getSampleDate(){//得到简介时间
		return String.valueOf(this.getYear()) + "-"
		+ String.valueOf(this.getMonth()) + "-"
		+ String.valueOf(this.getDay());
	}
	
	public Date sampleStringToDate(String strDate){//将简介时间字符串转成时间
		try{
			simpleFormat=new SimpleDateFormat("yyyy-MM-dd");//日期的字符强制转换
			date=simpleFormat.parse(strDate);
			return date;
		}catch(ParseException e){
			e.printStackTrace();
		}
		return null;
	}
	public String getEndTime(int month){//得到结束时间(按月计算)
		int nowyear=Integer.parseInt(this.getYear());
		int nowmonth=Integer.parseInt(this.getMonth());
		int endmonth=nowmonth+month;
		if(endmonth>12){
			endmonth=endmonth-12;
			nowyear+=1;
		}
		String nowDate=String.valueOf(nowyear) + "-"
		+ String.valueOf(endmonth) + "-"
		+ String.valueOf(this.getDay()) + "  "
		+ String.valueOf(this.getHour()) + ":"
		+ String.valueOf(this.getMinute()) + ":"
		+ String.valueOf(this.getSecond());
		return nowDate;
	}
	public int getNumberOfDays(String startTime,String endTime){//比较两个String 时间的相差天数
		Date startDate=this.stringToDate(startTime);
		long longStartTime=startDate.getTime();//得到时间的毫秒
		Date endDate=this.stringToDate(endTime);
		long longEndTime=endDate.getTime();//得到时间的毫秒
		int day=(int)((longStartTime-longEndTime)/ 86400000);//得到相差的天数。
		return day;
	}
}

 

分享到:
评论

相关推荐

    java时间处理类

    提供友好的时间处理接口,方便处理java时间相关问题

    日期时间处理类需要处理的时间和日期的转换

    在Java中,日期时间处理类的情况有所不同。Java 8之前,主要使用`java.util.Date`和`java.text.SimpleDateFormat`进行日期时间的处理,但这两个类的设计被认为不够理想。自Java 8起,引入了`java.time`包,其中包括`...

    php封装的时间处理类

    通过这样的时间处理类,开发者可以在项目中轻松地实现各种时间相关的功能,而无需重复编写相同的代码。这不仅可以提高开发效率,也有助于保持代码的整洁和一致性。在实际使用时,只需要实例化这个类,并调用相应的...

    Java的日期时间处理类讲解代码( Date 、Calendar、SimpleDateFormat、LocalDateTime)

    本源码资源提供了Java中的日期时间处理类相关内容,包括日期、时间和时区的操作方法和示例。它涵盖了Java编程中常用的日期时间处理需求以及如何使用日期时间类来解决这些问题。 适用人群 本源码资源适用于具备一定...

    java时间处理类,

    提供各种时间操作,格式化时间格式,时间格式的转换.

    java 时间处理类

    对年月日进行处理,计算延迟一段时间后的日期问题。 在订购类业务中,频繁涉及时间计算问题。 两个构造函数 public Kdate(int days) public Kdate(int year, int month, int day) 三个公共接口: public Kdate ...

    Java日期时间处理类 date4j

    Java日期时间处理在编程中是一项常见任务,但Java标准库中的`java.util.Date`和`Calendar`类在使用上往往被认为复杂且不直观。为了解决这个问题,`date4j`库应运而生,它提供了更为简洁和现代的方式来处理日期和时间...

    PHP时间处理类操作示例

    在这篇文章中,我们将重点介绍PHP中的时间处理类,如DateTime、DateTimeZone、DateInterval和DatePeriod,这些类可以简化我们在PHP项目中进行日期和时间操作的过程。 首先,我们来详细解释一下这些类的用途: 1. ...

    时间处理工具类

    快速处理时间格式,拥有丰富的时间处理格式

    有关时间的处理封装方法

    我们可以创建一个专门的时间处理类,比如`TimeHandler`,在这个类中定义各种方法,如获取当前时间、格式化时间、计算时间差等。例如: ```python class TimeHandler: @staticmethod def get_current_timestamp():...

    java系统获取时间小类

    `java.util.Date`是Java中最早的日期时间处理类之一。它代表特定的时间点,精确到毫秒。在给定的代码片段中,`Date`对象被创建并用于获取当前时间。然而,`Date`类的设计并不理想,它缺乏线程安全性和灵活性,因此在...

    Java中日期时间处理.docx

    接下来,Calendar类是比Date更加强大的日期时间处理类,它是一个抽象类,通常通过Calendar.getInstance()获取其子类的实例。Calendar类提供了更丰富的功能,包括设置和获取日期时间的各种组件,如YEAR、MONTH、DATE...

    时间工具类 DateUtils

    首先,`DateUtils` 类通常是一个自定义的时间处理类,它扩展了Java内置的`java.util.Calendar`或`java.time`包的功能。`DateUtils` 提供了一系列静态方法,用于格式化、解析日期,进行日期加减操作,比较日期等。...

    java笔试面试--日期时间处理要点.pdf

    `java.util.Date`类是Java中最基础的日期时间处理类,它能够精确到毫秒级别,表示的是从1970年1月1日00:00:00.000 GMT(格林威治标准时间)到当前时间的毫秒差值。 格林威治标准时间(GMT)是基于地球自转计算的...

    java时间工具类,基本上全面的包括常用的关于时间的处理

    `java.time`包包含如`LocalDate`, `LocalTime`, `LocalDateTime`等类,提供了更强大且易用的时间处理功能。然而,由于许多老项目仍然使用`java.util.Date`,DateUtil可能仍然基于这个旧的API,或者它也可能已经进行...

    java各种时间应用的一个实例

    最后,`java.util.Calendar`和`java.util.Date`是Java早期版本中的日期和时间处理类,虽然现在推荐使用`java.time`包,但它们依然广泛存在。理解这两个类的用法对于处理遗留代码仍然是必要的。 总结,Java中的时间...

    时间各种处理类

    时间的处理各种方式 java8 技术 对时间处理的各种方式

    java获取时间大全

    Java获取时间是一个重要的编程任务,尤其在开发过程中处理日期和时间相关的逻辑时。Java提供了多种方式来操作和...在实际开发中,根据项目需求选择合适的时间处理类和方法,可以更好地处理各种日期和时间相关的问题。

    日期和时间的扩展类2.2版的更新程序(22KB)

    总结来说,这个"日期和时间的扩展类2.2版的更新程序"是一个用于增强日期和时间处理的C++库,它可能包括用户界面控件,提供源码供定制,与系统时间功能有深度集成,并且包含了一些关键的日期时间处理类。更新可能涉及...

Global site tag (gtag.js) - Google Analytics