java -日期
package com.qinghuainvest.tsmarket.util; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale; public class UtilsDate {
public static final String yyyy_MM_dd_HH_mm_ss = "yyyy-MM-dd HH:mm:ss";
public static final String yyyy_MM_dd = "yyyy-MM-dd";
public static final String yyyyMMdd = "yyyyMMdd";
public static final String yyyyMM = "yyyyMM"; /**
* 将字符串日期格式转化成另一种日期格式
* @param strDate:字符日期
* @param dateFormat:字符日期的格式
* @param pformat:需要格式化后的日期格式
* @return
*/
public static String getStringToString(String strDate,String dateFormat,String pformat){
return getDateToString(getStringToDate(dateFormat, strDate), pformat); } /**
* 系统日期转化成字符串
* @param format
* @return
*/
public static String getSystemDateToString(String format) {
return getDateToString(new Date(), format);
}
/**
* 日期转化成str字符串
* @param date
* @param format
* @return
*/
public static String getDateToString(Date date,String format) {
if( date == null )return null;
SimpleDateFormat siFormat = new SimpleDateFormat(format);
try {
return siFormat.format(date);
} catch (Exception e) {
e.printStackTrace();
}
return null;
} /**
* 系统日期的前n日
* @param dateTime:待处理的日期
* @param n:加减天数
* @return
*/
public static String getSystemDateToYesterday(int n,String format){
try {
return getDateToString(new Date(getSystemDateToDate(format).getTime()- n * 24 * 60 * 60 * 1000), format);
} catch (Exception e) {
e.printStackTrace();
}
return null;
} /**
* 系统年份
* @param format
* @return
*/
public static int getYear(String format){
return getYear(format, new Date()); }
/**
* 读取日期中的年份
* @param format
* @param date
* @return
*/
public static int getYear(String format,Date date){
try {
return Integer.parseInt(new SimpleDateFormat(format).format(date));
} catch (Exception e) {
e.printStackTrace();
}
return 0;
} /**
* 读取系统日期
* @param format
* @return
*/
public static Date getSystemDateToDate(String format) {
return getStringToDate(format, new SimpleDateFormat(format).format(new Date()));
} /**
* 字符串日期转化成日期对象Date
* @param format
* @param date
* @param locale
* @return
*/
public static Date getStringToDate(String format,String date,Locale locale) {
try {
return new SimpleDateFormat(format,locale).parse(date);
} catch (ParseException ex) {
ex.printStackTrace();
}
return null;
} /**
* 字符串日期转化成日期对象Date(本地日期对象)
* @param format
* @param date
* @return
*/
public static Date getStringToDate(String format,String date) {
return getStringToDate(format, date, Locale.CHINA);
} /**
* 比较两个日期是否相等
* @param date1
* @param date2
* @return
*/
public static boolean isEquals(Date date1,Date date2){
return isEqualsYYYYMMDD(getDateToString(date1,yyyy_MM_dd_HH_mm_ss), getDateToString(date2,yyyy_MM_dd_HH_mm_ss));
} /**
* 当前日期是否与系统日期相等
* @param date
* @param systemformat
* @return
*/
public static boolean isEqualsYYYYMMDDToday(String date,String systemformat){
return isEqualsYYYYMMDD(date,getSystemDateToString(systemformat));
} /**
* 当前日期是否与系统日期相等
* @param date
* @return
*/
public static boolean isEqualsYYYYMMDDToday(Date date){
return isEqualsYYYYMMDD(date,new Date());
} /**
* 比较两个日期是否相等
* @param date1
* @param date2
* @return
*/
public static boolean isEqualsYYYYMMDD(Date date1,Date date2){
return isEqualsYYYYMMDD(getDateToString(date1,yyyy_MM_dd), getDateToString(date2,yyyy_MM_dd));
} /**
* 比较两个日期字符串是否相等,需要确定两个日期的字符格式
* @param str1
* @param str1Format
* @param str2
* @param str2Format
* @return
*/
public static boolean isEqualsYYYYMMDD(String str1,String str1Format,String str2,String str2Format){
return isEqualsYYYYMMDD(getStringToString(str1, str1Format, yyyy_MM_dd), getStringToString(str2, str2Format, yyyy_MM_dd));
} /**
* 比较两个日期字符串是否相等,需要确定两个日期的字符格式
* @param str1
* @param str2
* @return
*/
public static boolean isEqualsYYYYMMDD(String str1,String str2){
if( str1== null ){
if( str2 == null )return true;
return false;
}
return str1.equals(str2);
} /**
* 比较日期大小
* @param date1
* @param date2
* @return true:date1大于/等于data2;false:date1小于data2
*/
public static boolean isMoreSize(Date date1,Date date2) {
if( date1 == null ) return false;
if(!date1.before(date2))
return true;
return false;
} public static void main(String[] args) { Date date1 = UtilsDate.getStringToDate(UtilsDate.yyyy_MM_dd,"2015-01-29");
Date date2 = UtilsDate.getSystemDateToDate(UtilsDate.yyyy_MM_dd);
if( !UtilsDate.isMoreSize(date1, date2)) {//今天之前的,则移除
System.out.println("data1小于且不等于date2移除");
} System.out.println("比较日期大小:"+getStringToDate(yyyy_MM_dd,"2015-04-29"));
System.out.println("当前系统日期:"+getSystemDateToString(yyyy_MM_dd_HH_mm_ss)); System.out.println("今年"+getYear("yyyy")); System.out.println("系统日期的前一天:"+getSystemDateToYesterday(1, yyyy_MM_dd));
} }
获取上个月:
Calendar c = Calendar.getInstance();
c.add(Calendar.MONTH, -1);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
String time = format.format(c.getTime());
//得到一个月最后一天日期(31/30/29/28)
int MaxDay=c.getActualMaximum(Calendar.DAY_OF_MONTH);
//按你的要求设置时间
c.set( c.get(Calendar.YEAR), c.get(Calendar.MONTH), MaxDay, 23, 59, 59);
//按格式输出
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String gtime = sdf.format(c.getTime()); //上月最后一天 /**
* 获取本日日期
* @return
*/
public static String getToDay(){
Calendar c = Calendar.getInstance();
String time = getTime(c);
System.out.println(time);
return time;
} /**
* 获取本周一日期
* @return
*/
public static String getWeekA(){
Calendar cal =Calendar.getInstance();
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
// System.out.println(cal.getTime());
String time = getTime(cal)+" 00:00:00";
System.out.println(time);
return time;
} /**
* 获取本周日日期
* @return
*/
public static String getWeekB(){
Calendar cal =Calendar.getInstance();
// System.out.println(cal.getTime());
//这种输出的是上个星期周日的日期,因为老外那边把周日当成第一天
cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
// System.out.println(cal.getTime()); //增加一个星期,才是我们中国人理解的本周日的日期
cal.add(Calendar.WEEK_OF_YEAR, 1);
// System.out.println(cal.getTime()); //本周日
String time = getTime(cal)+" 23:59:59";
System.out.println(time);
return time;
} /**
* 获取本月日期
* @return
*/
public static String getMonth(){
Calendar c = Calendar.getInstance();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
String time = format.format(c.getTime());
System.out.println(time);
return time;
}
java -日期的更多相关文章
- [转]Java日期时间使用总结
原文地址:http://lavasoft.blog.51cto.com/62575/52975/ 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中 ...
- java日期操作大全
摘自(http://www.blogjava.net/i369/articles/83483.html) java日期操作 大全 先来一个: 取得指定月份的第一天与取得指定月份的最后一天 http ...
- java日期处理总结
Java日期时间使用总结 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式 ...
- Java日期时间使用总结
一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式都是非常复杂的问题. 在J ...
- Java 日期时间
Java 日期时间 标签 : Java基础 Date java.util.Date对象表示一个精确到毫秒的瞬间; 但由于Date从JDK1.0起就开始存在了,历史悠久,而且功能强大(既包含日期,也包含 ...
- Java日期时间使用(转)
Java日期时间使用总结 转自:http://lavasoft.blog.51cto.com/62575/52975/ 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个 ...
- Java日期的格式String类型GMT,GST换算成日期Date种类
请尊重他人的劳动成果.转载请注明出处:Java日期格式化之将String类型的GMT,GST日期转换成Date类型 http://blog.csdn.net/fengyuzhengfan/articl ...
- java日期格式大全 format SimpleDateFormat(转)
java日期格式大全 format SimpleDateFormat /** * 字符串转换为java.util.Date<br> * 支持格式为 yyyy.MM.dd G ...
- Java日期工具类,Java时间工具类,Java时间格式化
Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...
- Java日期格式化方法
首先获取当前系统时间的方法有两种:第一种可以用currentTimeMillis()方法获取,它其实产生的是一个当前的毫秒数,这个毫秒是自1970年1月1日0时起至现在的毫秒数,类型是long 型,可 ...
随机推荐
- using关键字背后的故事!
using关键字的作用: 1:可以引入命名空间2:可以释放资源 *****不能使用using语句完全替换掉(try-catch-finally)语句(无法进行异常处理) 在出了using语句的{}后, ...
- windows下使用 linux命令好办法
1. 安装下载 CygwinPortable一键安装包.7z 2. 把安装路径下/ [D:\cygwinportable\CygwinPortable\App\Cygwin\bin] 加到 Path ...
- DEDECMS之五 单页
在网站开发中经常碰到关于我们.联系方式等简单的页面,那么在DEDECMS中如何实现? 一.效果 以上左侧导航的链接都是单页,右边为内容部分 二.单页的实现 创建频道封来实现 1.常规选项 2.高级选项 ...
- Web API删除JSON格式的文件记录
Insus.NET的系列Web Api学习文章,这篇算是计划中最后一篇了,删除JSON格式的文件记录.前一篇<Web Api其中的PUT功能演示>http://www.cnblogs.co ...
- Alwayson--SYS.dm_hadr_instance_node_map 返回0行
下面是MSDN关于SYS.dm_hadr_instance_node_map 的解释,我就不在翻译了 For every instance of SQL Server that hosts an av ...
- SharePoint 2013无代码实现列表视图的时间段动态筛选
本文介绍两种为列表视图设置时间段筛选器的方法.其中,第一个方法用于SharePoint Server,第二个方法同时还能用于SharePoint Foundation. 方法一:日期筛选器Web部件 ...
- [转]Gson过滤字段
原文地址:http://my.oschina.net/orgsky/blog/368768 摘要 Gson过滤字段 Gson过滤字段 Gson 过滤 字段 属性 目录[-] 最简单的用法 方法1:排除 ...
- indows 8上强制Visual Studio以管理员身份运行
http://diaosbook.com/Post/2013/2/28/force-visual-studio-always-run-as-admin-on-windows-8 Windows 8的一 ...
- React Native开发技术周报1
(一).资讯 1.React Native 0.21版本发布,最新版本功能特点,修复的Bug可以看一下已翻译 重要:如果升级 Android 项目到这个版本一定要读! 我们简化了 Android 应用 ...
- C/C++实践笔记 003
数据结构与算法程序=数据结构+算法语言是一种工具语言工具(c,c++)--程序设计方法(面向过程.面向对象)——数据结构(二叉树.队列.栈.红黑树.链表……)——算法(快速排序算法.冒泡排序算法.选择 ...