import java.io.IOException;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import cn.com.agree.ab.trade.core.Trade;
/**
* <DL>
* <DT><B> 功能说明</B></DT>
* 字符串处理工具
* </DL>
*
* @author
* @since 2015-6-3
*/
public class DateUtil {
/**
* <b>功能说明</b> 获取自定义格式的时间
*
* @param format
* 格式
* <p>
* <b>例如:</b><br>
* 使用例子说明 String a=NetCheck.getdataString("yyyyMMdd");
* </p>
*/
public static String getdataString(String format) {
DateFormat dateFormat = new SimpleDateFormat(format);
return dateFormat.format(new Date());
}
public static String getNextDay(Date date, String format) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, -7);
date = calendar.getTime();
DateFormat dateFormat = new SimpleDateFormat(format);
return dateFormat.format(date);
}
public static String getFormatDate(String datestr) throws ParseException {
SimpleDateFormat df = new SimpleDateFormat("yyyyMMddhhmmss");
Date date = null;
date = df.parse(datestr);
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return dateFormat.format(date);
}
public static String getNextDay(Date date, String format, int days) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, days);
date = calendar.getTime();
DateFormat dateFormat = new SimpleDateFormat(format);
return dateFormat.format(date);
}
public static List<String> getMonthWeekends(Trade trade,int month,int year) throws IOException{
List<String> hostDays = new ArrayList<String>();
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month-1);
cal.set(Calendar.DAY_OF_MONTH, 1);
int startIndex = cal.get(Calendar.DAY_OF_WEEK) -1 ; // 0~6 表示 周日 ~ 周六
int endIndex = startIndex + getLastDayOfMonth(year, month) - 1;
int startday = 1;
for (int i = 0; i < 42; i++) {
if (i >= startIndex && i <= endIndex) {
cal.set(Calendar.DAY_OF_MONTH, startday);
if(cal.get(Calendar.DAY_OF_WEEK)==1||cal.get(Calendar.DAY_OF_WEEK)==7){
hostDays.add(startday+"");
}
startday++;
}
}
return hostDays;
}
public static boolean isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
public static int getLastDayOfMonth(int year, int month) {
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8
|| month == 10 || month == 12) {
return 31;
}
if (month == 4 || month == 6 || month == 9 || month == 11) {
return 30;
}
if (month == 2) {
if (isLeapYear(year)) {
return 29;
} else {
return 28;
}
}
return 0;
}
}
分享到:
相关推荐
此外,我们还将探讨如何使用自定义格式来获取日期时间。 #### 二、基本概念 在Java中,有多种类可以用于获取日期时间,主要包括`java.util.Date`、`java.sql.Date`、`java.util.Calendar`和`java.text....
Java获取时间是一个重要的编程任务,尤其在开发过程中处理日期和时间相关的逻辑时。Java提供了多种方式来操作和格式化时间,这些方法分布在不同的类和包中。以下是对这些知识点的详细说明: 1. **基础时间类:** -...
自定义消息协议是在标准TCP/IP协议之上,根据具体需求设计的一种数据传输格式。本篇将详细讲解如何在Java中实现基于Socket的自定义消息协议,以及客户端与服务器端的数据转换与解析过程。 首先,我们来看`Socket...
总的来说,`java.util.Date` 类在获取和表示当前系统时间上是一个基础且实用的工具,虽然在新的Java版本中有了更好的替代品,但理解其工作原理对于理解Java的日期和时间处理至关重要。在实际编程中,根据项目需求和...
- 这些工厂方法可以根据不同的参数设置返回不同格式的日期时间格式化器。 #### 3. `DateFormat`的样式设置 - `DateFormat`提供了多种样式来格式化日期和时间: - **SHORT**(简短样式):如“16-6-08 8:54”。 -...
5. **格式化输出**:将计算出的时间差转换为人类可读的格式,通常需要 `java.text.SimpleDateFormat` 或者 Java 8 中的 `DateTimeFormatter`。例如: ```java SimpleDateFormat formatter = new SimpleDateFormat(...
这种方法简单易用,但输出的时间格式可能不符合特定需求。 #### 方法二:使用`System.currentTimeMillis()` ##### 代码实现 ```java Date date2 = new Date(System.currentTimeMillis()); System.out.println(...
在代码示例中,通过`DateFormat.getDateInstance()`方法创建了一个`DateFormat`实例,并设置了显示格式为`DateFormat.FULL`,这通常表示完整的日期和时间格式(例如,“星期三,八月 23,2023 12:05:08 上午 CST”)...
### Java自定义过滤器知识点详解 #### 一、概述 在Java Web开发中,过滤器(Filter)是一种非常实用的功能,它可以对用户请求进行预处理或对响应进行后处理。通过配置过滤器,开发者可以在不修改任何现有代码的...
// 将当前时间格式化为字符串 String str_date1 = formatter.format(currentTime); // 输出结果 System.out.println("当前时间为:" + str_date1); ``` #### 使用`LocalDateTime` 从Java 8开始,新的日期和时间...
这种方式相比于`SimpleDateFormat`更为灵活,可以自定义返回的时间格式。 **代码实现**: ```java public static String getCurrentTime() { Calendar calendar = new GregorianCalendar(); int year = calendar....
根据提供的文件信息,本文将详细解释Java中时间与日期格式化的相关知识点,包括如何使用`java.text.DateFormat`类以及`java.text.SimpleDateFormat`类来进行日期格式的定制化处理,并且会额外介绍`java.util....
本主题将详细讲解如何实现“java后台获取小程序用户信息”、“生成自定义token”以及“使用filter过滤header的token”的核心技术点。 首先,我们要理解小程序与后台交互的基本流程。小程序通常会通过调用微信提供的...
在Java编程语言中,获取图片的EXIF(Exchangeable Image File Format)信息是一项常见的任务,尤其是在处理图像数据或开发图像处理应用时。EXIF信息包含了拍摄照片时的各种元数据,如相机型号、拍摄时间、曝光参数、...
"Java获取全国省市列表2016版.zip"这个压缩包文件很可能是提供了一个包含中国所有省份和城市的数据资源,供开发者在2016年时使用。下面将详细介绍如何在Java中处理这样的数据,以及可能遇到的相关知识点。 首先,...
在Android中,我们可以使用Calendar或者java.time包中的类来获取当前时间,然后根据时间的小时、分钟、秒来计算指针的位置。例如,我们可以用角度来表示时间,12小时制的表盘360度代表24小时,每小时对应30度,分钟...
`DateTime` 类中定义了几种常用的日期时间格式,如下所示: - **DateTimeFormat1**: `"yyyy-MM-dd HH:mm:ss"` — 表示年-月-日 时:分:秒 的格式。 - **DateTimeFormat2**: `"yyyy-MM-dd HH:mm:ss:SSS"` — 表示年-...
当我们插入或查询数据时,可以使用 `STR_TO_DATE()` 或 `DATE_FORMAT()` 函数来转换日期时间格式: ```sql INSERT INTO table_name (datetime_column) VALUES (STR_TO_DATE('2023-03-04 15:30:00', '%Y-%m-%d %H:%i...
它支持自定义的日期和时间格式,例如"yyyy-MM-dd HH:mm:ss"。使用`format()`方法将`Date`对象转换为字符串,使用`parse()`方法将字符串转换回`Date`。 示例: ```java Date date = new Date(); ...
本文将详细介绍两种不同的Java获取当前时间的方法,并进一步探讨如何在Spring框架中实现定时任务。 方法一: Java提供了`java.util.Date`和`java.util.Calendar`类来获取当前时间。在示例代码中,首先创建一个`Date...