- 浏览: 106649 次
- 性别:
- 来自: 湖南
文章分类
最新评论
-
oswork:
http://www.baidu.com/link?url=s ...
JS解析URL -
freedom2k:
这东西看官网实例就行了,还以为有什么特别的东西呢
ExtJs Store的使用 -
linux1689:
关于Store和Direct的使用,请大家围观最近的畅销书《E ...
ExtJs Store的使用 -
lw671579557:
哎呀,刚用了下,发现pagingBar.cursor是可以的. ...
获取GridPanel中当前页在分页中的位置 -
lw671579557:
kimmking 写道pagingBar.field.dom. ...
获取GridPanel中当前页在分页中的位置
java使用Calendar类获得指定日期
关于指定日期的获取,是根据指定日期和当前日期相差的天数,然后使用set方法设置Calendar.DAY_OF_MONTH的值。
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH) - dayPlus);
(dayPlus表示指定日期和当前日期相差的天数)
不进行set,默认是获取系统时间,初步测试没有问题,可正确获得指定日期。
*************************************************************************************************
代码:
// 获得当前日期
public static String getDate() {
Calendar cal = Calendar.getInstance();
return getDate(cal);
}
// 获得日期
private static String getDate(Calendar cal) {
String v_strDate = "";
int v_intYear = cal.get(Calendar.YEAR);
int v_intMonth = cal.get(Calendar.MONTH) + 1;
int v_intDAY = cal.get(Calendar.DAY_OF_MONTH);
int v_intHOUR = cal.get(Calendar.HOUR_OF_DAY);
int v_intMINUTE = cal.get(Calendar.MINUTE);
int v_intSECOND = cal.get(Calendar.SECOND);
if (v_intDAY < 10) {
v_strDate = v_strDate + "0" + v_intDAY + "-";
}else {
v_strDate = v_strDate + v_intDAY + "-";
}
if (v_intMonth < 10) {
v_strDate = v_strDate + "0" + v_intMonth + "-";
}else {
v_strDate = v_strDate + v_intMonth + "-";
}
v_strDate = v_strDate + v_intYear + " ";
if (v_intHOUR < 10) {
v_strDate = v_strDate + "0" + v_intHOUR + ":";
}else {
v_strDate = v_strDate + v_intHOUR + ":";
}
if (v_intMINUTE < 10) {
v_strDate = v_strDate + "0" + v_intMINUTE + ":";
} else {
v_strDate = v_strDate + v_intMINUTE + ":";
}
if (v_intSECOND < 10) {
v_strDate = v_strDate + "0" + v_intSECOND;
} else {
v_strDate = v_strDate + v_intSECOND;
}
cal = null;
return v_strDate;
}
//获得当前日期与本周日相差的天数
private static int getMondayPlus() {
Calendar cd = Calendar.getInstance();
// 获得今天是一周的第几天,星期日是第一天,星期二是第二天......
int dayOfWeek = cd.get(Calendar.DAY_OF_WEEK) - 1; // 因为按中国礼拜一作为第一天所以这里减1
if (dayOfWeek == 1) {
return 0;
} else {
return dayOfWeek - 1;
}
}
//获得本周一的日期
public static String getThisMondayDate() {
Calendar cal = Calendar.getInstance();
int mondayPlus = getMondayPlus();
cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH)-mondayPlus);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
return getDate(cal);
}
//获得本月1号的日期
public static String getCurrentMonthBeginDate(){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, 1);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
return getDate(cal);
}
//获得上周一的日期
public static String getLastMondayDate(){
Calendar cal = Calendar.getInstance();
int dayPlus = getMondayPlus()+7;
cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH)-dayPlus);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
return getDate(cal);
}
//获得上周日的日期
public static String getLastSundayDate(){
Calendar cal = Calendar.getInstance();
int dayPlus = getMondayPlus()+1;
cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH)-dayPlus);
cal.set(Calendar.HOUR_OF_DAY, 23);
cal.set(Calendar.MINUTE, 59);
cal.set(Calendar.SECOND, 59);
return getDate(cal);
}
//获得上月1号的日期
public static String getLastMonthBeginDate(){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.MONTH, cal.get(Calendar.MONTH)-1);
cal.set(Calendar.DAY_OF_MONTH,1);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
return getDate(cal);
}
//获得上个月最后一天的日期
public static String getLastMonthEndDate(){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, 0);
cal.set(Calendar.HOUR_OF_DAY, 23);
cal.set(Calendar.MINUTE, 59);
cal.set(Calendar.SECOND, 59);
return getDate(cal);
}
public static void main(String[] args) {
System.out.println(getDate());
System.out.println(getThisMondayDate());
System.out.println(getCurrentMonthBeginDate());
System.out.println(getLastMondayDate());
System.out.println(getLastSundayDate());
System.out.println(getLastMonthBeginDate());
System.out.println(getLastMonthEndDate());
}
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH) - dayPlus);
(dayPlus表示指定日期和当前日期相差的天数)
不进行set,默认是获取系统时间,初步测试没有问题,可正确获得指定日期。
*************************************************************************************************
代码:
// 获得当前日期
public static String getDate() {
Calendar cal = Calendar.getInstance();
return getDate(cal);
}
// 获得日期
private static String getDate(Calendar cal) {
String v_strDate = "";
int v_intYear = cal.get(Calendar.YEAR);
int v_intMonth = cal.get(Calendar.MONTH) + 1;
int v_intDAY = cal.get(Calendar.DAY_OF_MONTH);
int v_intHOUR = cal.get(Calendar.HOUR_OF_DAY);
int v_intMINUTE = cal.get(Calendar.MINUTE);
int v_intSECOND = cal.get(Calendar.SECOND);
if (v_intDAY < 10) {
v_strDate = v_strDate + "0" + v_intDAY + "-";
}else {
v_strDate = v_strDate + v_intDAY + "-";
}
if (v_intMonth < 10) {
v_strDate = v_strDate + "0" + v_intMonth + "-";
}else {
v_strDate = v_strDate + v_intMonth + "-";
}
v_strDate = v_strDate + v_intYear + " ";
if (v_intHOUR < 10) {
v_strDate = v_strDate + "0" + v_intHOUR + ":";
}else {
v_strDate = v_strDate + v_intHOUR + ":";
}
if (v_intMINUTE < 10) {
v_strDate = v_strDate + "0" + v_intMINUTE + ":";
} else {
v_strDate = v_strDate + v_intMINUTE + ":";
}
if (v_intSECOND < 10) {
v_strDate = v_strDate + "0" + v_intSECOND;
} else {
v_strDate = v_strDate + v_intSECOND;
}
cal = null;
return v_strDate;
}
//获得当前日期与本周日相差的天数
private static int getMondayPlus() {
Calendar cd = Calendar.getInstance();
// 获得今天是一周的第几天,星期日是第一天,星期二是第二天......
int dayOfWeek = cd.get(Calendar.DAY_OF_WEEK) - 1; // 因为按中国礼拜一作为第一天所以这里减1
if (dayOfWeek == 1) {
return 0;
} else {
return dayOfWeek - 1;
}
}
//获得本周一的日期
public static String getThisMondayDate() {
Calendar cal = Calendar.getInstance();
int mondayPlus = getMondayPlus();
cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH)-mondayPlus);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
return getDate(cal);
}
//获得本月1号的日期
public static String getCurrentMonthBeginDate(){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, 1);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
return getDate(cal);
}
//获得上周一的日期
public static String getLastMondayDate(){
Calendar cal = Calendar.getInstance();
int dayPlus = getMondayPlus()+7;
cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH)-dayPlus);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
return getDate(cal);
}
//获得上周日的日期
public static String getLastSundayDate(){
Calendar cal = Calendar.getInstance();
int dayPlus = getMondayPlus()+1;
cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH)-dayPlus);
cal.set(Calendar.HOUR_OF_DAY, 23);
cal.set(Calendar.MINUTE, 59);
cal.set(Calendar.SECOND, 59);
return getDate(cal);
}
//获得上月1号的日期
public static String getLastMonthBeginDate(){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.MONTH, cal.get(Calendar.MONTH)-1);
cal.set(Calendar.DAY_OF_MONTH,1);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
return getDate(cal);
}
//获得上个月最后一天的日期
public static String getLastMonthEndDate(){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, 0);
cal.set(Calendar.HOUR_OF_DAY, 23);
cal.set(Calendar.MINUTE, 59);
cal.set(Calendar.SECOND, 59);
return getDate(cal);
}
public static void main(String[] args) {
System.out.println(getDate());
System.out.println(getThisMondayDate());
System.out.println(getCurrentMonthBeginDate());
System.out.println(getLastMondayDate());
System.out.println(getLastSundayDate());
System.out.println(getLastMonthBeginDate());
System.out.println(getLastMonthEndDate());
}
发表评论
-
Fork/Join小例子
2016-06-17 12:55 6061、使用Fork/Join并行查询业务,如例子中根据多 ... -
Json解析
2014-10-30 00:18 0public static JSONObject creat ... -
java枚举简单示例
2014-06-16 09:38 738public enum Color { RED ... -
使用jspSmartUpload文件上传
2014-03-13 10:42 480使用jspSmartUpload文件上传 inde ... -
对象排序
2014-03-06 17:48 778实现Java对象按多列排序。 Person类,先按age排 ... -
pushlet简单示例
2014-01-09 14:21 759有两种实现方式: 1. 通过配置文件来实现 ... -
Create VerifyCode by jsp of java
2013-11-20 17:10 1731使用java生成VerifyCode Ve ... -
服务端生成图片异常
2013-11-11 15:33 665在服务器端生成的图片譬如验证码、条形码、二维码等,打开网页后 ... -
Spring Quartz框架使用
2013-09-24 15:13 823主要是applicationContext.xml文件配置: ... -
cron表达式含义
2013-09-24 14:24 1238找到的一篇文章,记录下来。 Quartz 提供七个域。表 ... -
Jquery+Struts2+JSON处理
2013-09-23 18:40 681Jquery+Struts2+JSON处理 -
Jquery+servlet+JSON处理
2013-07-02 17:36 9881、前台处理 <script t ... -
REST
2013-06-05 21:17 864import java.io.InputStream; i ... -
Linux管理日志
2012-08-16 14:06 920tomcat日志归档步骤:1、以root用户登录2、创建归档任 ... -
java 读properties文件
2012-06-29 14:57 1092public class PropertiesTool{ ... -
用SQL实现递归
2011-12-16 19:58 1223单表: select t.typeId,t.typeName ... -
打印图形
2009-12-14 20:29 927int i=5; 1 2 3 4 ... -
XML2Bean
2009-12-01 15:03 1063XML2Bean -
用java程序创建文件夹
2009-11-24 17:08 3290//新建一个文件夹 public void newFolde ...
相关推荐
在Java编程语言中,`Date`和`Calendar`类是处理日期和时间的核心组件。这两个类在不同的Java版本中有着不同的使用方式和功能,对于理解Java时间处理机制至关重要。本篇将深入探讨`Date`和`Calendar`类的实例应用。 ...
这个类允许我们指定日期/时间的格式,然后将`Date`对象转换为字符串,或将字符串解析为`Date`对象。结合`Calendar`类,我们可以实现更复杂的日期转换需求。 #### 示例:将`Calendar`转换为字符串 ```java import ...
根据指定日期计算对应农历日期(这个计算方法是网上找的,最初的作者是谁已经无法考证了,感谢网络资源吧!),本人封装成好用的JAR包后发不出来,供大家免费下载! toString()方法输出阴历日期(例如:癸巳年七月...
`SimpleDateFormat`是`DateFormat`的子类,允许程序员指定日期和时间的格式。在`simpleDateFormat()`方法中,通过`SimpleDateFormat`可以解析和格式化日期。例如,`sdf1.parse(strDate)`将字符串转换为日期,`sdf2....
4. `get(int field)`:获取指定日期字段的值,如`Calendar.YEAR`, `Calendar.MONTH`, `Calendar.DAY_OF_MONTH`等。 5. `set(int field, int value)`:设置指定日期字段的值。 6. `add(int field, int amount)`:在...
JavaCalendar是Java编程语言中用于处理日期和时间的重要类,它是`java.util.Calendar`的实现。这个源码分析将深入探讨Java中日期和时间的管理,以及如何利用`Calendar`类进行相关的操作。 首先,`Calendar`类是抽象...
本文主要介绍了Java使用Calendar类输出指定年份和月份的日历,通过示例代码详细介绍输出指定年份和月份的日历代码实例的实现过程。 Calendar类是Java中一个非常重要的类,提供了许多有用的方法来处理日期和时间相关...
Java API中的`java.util.GregorianCalendar`类是用于处理日期和时间的重要工具,它提供了丰富的功能来满足各种日历操作需求。这个类是基于格里高利历(公历)的,是Java中最常用的日期时间类之一。在给定的压缩包...
在Java编程语言中,`Calendar`类是处理日期和时间的核心工具之一,它提供了一系列用于操作日期和时间的方法。然而,值得注意的是,`Calendar`类本身是一个抽象类,这意味着我们不能直接实例化它来创建一个对象。为了...
Java 中的 Calendar 类是一个非常重要的类,它提供了许多有用的方法和字段来处理日期和时间相关的操作。下面我们将详细介绍 Java 中 Calendar 类的用法实例。 首先,Calendar 类提供了许多常量字段,例如 DATE、DAY...
Java 中使用 Calendar 类实现万年历 在 Java 中,使用 Calendar 类可以轻松地实现万年历的功能,无需手动判断年份是否为闰年或平年,也无需判断一个月有多少天。Calendar 类提供了多种方法来获取日期和时间信息,...
Java中的Date类和Calendar类是处理时间和日期的重要工具。在早期的JDK版本中,Date类是主要的日期时间表示类,但在JDK1.1之后,为了更好地支持国际化和增强功能,推荐使用Calendar类。 Date类: 1. **表示当前时间*...
这些方法的实现通常基于Java的`java.util.Calendar`类或Java 8引入的`java.time`包,它们提供了丰富的API来处理日期和时间。使用这样的帮助类,开发者可以更方便地处理各种复杂的日期时间问题,避免重复编写基础代码...
Java中的日期处理涉及到多个类,包括Date、Calendar、GregorianCalendar以及日期格式化类如DateFormat和SimpleDateFormat。这些类主要用于管理、操作和格式化日期和时间。以下是对这些类的详细说明: 1. **Date类**...
获取指定日期所在的年第几周 通过`Calendar`类,可以轻松获取或设置日期所在年的第几周: ```java Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, 2006); cal.set(Calendar.MONTH, 8); // 注意...
使用`java.util.Calendar`类可以方便地获取指定日期所在月份的第一天。首先,将输入的日期字符串转换为`java.util.Date`对象,然后通过`Calendar.getInstance()`创建一个`Calendar`实例,并将日期设置到该实例中。...
Java Calendar类日期的加减 Java 中的 Calendar 类提供了日期和时间的操作功能,本文将对 Calendar 类的日期加减操作进行详细的介绍和分析。 Calendar 类的日期加减操作 Calendar 类的日期加减操作可以通过 set()...
使用`java.text.SimpleDateFormat`类,可以将Date对象格式化为指定格式的字符串。例如,将日期加一天后,可以使用`SimpleDateFormat("yyyy-MM-dd")`格式化日期和时间。 - **JSP页面中的日期格式化**: 在JSP中,...
日期类有两个主要的实现类:`java.util.Date` 和 `java.util.Calendar`。其中,`Date` 类代表着一个特定的瞬间,通常用来表示当前时间,而 `Calendar` 类则是一个抽象类,提供了更多的方法来操作日期和时间。 日期...
在Java中,我们可以使用`java.util.Date`、`java.util.Calendar`以及`java.text.SimpleDateFormat`等类来完成日期和时间的操作。以下是对给定标题和描述中涉及的知识点的详细解释: 1. **获取指定日期** 在Java中...