java日期时间各种变换及处理

 2023-09-07 阅读 17 评论 0

摘要:本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com 内容可能有不到之处,欢迎交流。 未经本人,允许禁止转载。 java处理时间 个人在平时写程序的时候,会遇到将字符型转化为时间、或者获取当期时间,昨天的时间࿰

本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com 内容可能有不到之处,欢迎交流。
未经本人,允许禁止转载。

java处理时间

个人在平时写程序的时候,会遇到将字符型转化为时间、或者获取当期时间,昨天的时间,获取当前月,当前日,当前季度等等。为此,本人写了一个时间处理类,希望对大家有帮助。其中,该类中的函数,可能还会在以后遇到问题时,继续扩充。

程序

package util;import java.text.DateFormat;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/*** @author:合肥工业大学 管理学院 钱洋* @email:1563178220@qq.com* @ */
public class TimeUtils {public static void main( String[] args ) throws ParseException{List<String> monthlist = TimeUtils.YearMonth(2017,2018);for (int i = 0; i < monthlist.size(); i++) {System.out.println(monthlist.get(i));}String time = getMonth("2002-1-08 14:50:38");System.out.println(time);System.out.println(getDay("2002-1-08 14:50:38"));System.out.println(TimeUtils.parseTime("2016-05-19 19:17","yyyy-MM-dd HH:mm"));String data=getNowMonth();System.out.println(data);}//获取当前时间public static String GetNowDate(String formate){  String temp_str="";  Date dt = new Date();  SimpleDateFormat sdf = new SimpleDateFormat(formate);  temp_str=sdf.format(dt);  return temp_str;  }  //获取当前月public static String getMonth( String time ){SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");Date date = null;try {date = sdf.parse(time);Calendar cal = Calendar.getInstance();cal.setTime(date);} catch (ParseException e) {e.printStackTrace();}return sdf.format(date);}//获取当前日期public static String getDay( String time ){SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Date date = null;try {date = sdf.parse(time);Calendar cal = Calendar.getInstance();cal.setTime(date);} catch (ParseException e) {e.printStackTrace();}return sdf.format(date);}//输入时间,解析成"yyyy-MM-dd HH:mm:ss"格式public static Date parseTime(String inputTime) throws ParseException{SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  Date date = sdf.parse(inputTime); return date;}//将时间转成成字符型public static String dateToString(Date date, String type) { DateFormat df = new SimpleDateFormat(type);  return df.format(date);  }//将输入的时间,转化成指定格式public static Date parseTime(String inputTime, String timeFormat) throws ParseException{SimpleDateFormat sdf = new SimpleDateFormat(timeFormat);  Date date = sdf.parse(inputTime); return date;}public static Calendar parseTimeToCal(String inputTime, String timeFormat) throws ParseException{SimpleDateFormat sdf = new SimpleDateFormat(timeFormat);  Date date = sdf.parse(inputTime); Calendar calendar = Calendar.getInstance();calendar.setTime(date);return calendar;}public static int getDaysBetweenCals(Calendar cal1, Calendar cal2) throws ParseException{return (int) ((cal2.getTimeInMillis()-cal1.getTimeInMillis())/(1000*24*3600));}//长整型转化为时间public static Date parseTime(long inputTime){//  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date date= new Date(inputTime);return date;}public static String parseTimeString(long inputTime){SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date date= new Date(inputTime);return sdf.format(date);}public static String parseStringTime(String inputTime){String date=null;try {Date date1 = new SimpleDateFormat("yyyyMMddHHmmss").parse(inputTime);date=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date1);} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();}return date;}public static List<String> YearMonth(int year) {List<String> yearmouthlist=new ArrayList<String>();for (int i = 1; i < 13; i++) {DecimalFormat dfInt=new DecimalFormat("00");String sInt = dfInt.format(i);yearmouthlist.add(year+sInt);}return yearmouthlist;} //获取从起始年份到目标年份所有的月public static List<String> YearMonth(int startyear,int finistyear) {List<String> yearmouthlist=new ArrayList<String>();for (int i = startyear; i < finistyear+1; i++) {for (int j = 1; j < 13; j++) {DecimalFormat dfInt=new DecimalFormat("00");String sInt = dfInt.format(j);yearmouthlist.add(i +""+sInt);}}return yearmouthlist;} public static List<String> TOAllDay(int year){List<String> daylist=new ArrayList<String>();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); int m=1;//月份计数 while (m<13) { int month=m; Calendar cal=Calendar.getInstance();//获得当前日期对象 cal.clear();//清除信息 cal.set(Calendar.YEAR,year); cal.set(Calendar.MONTH,month-1);//1月从0开始 cal.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天  System.out.println("##########___" + sdf.format(cal.getTime())); int count=cal.getActualMaximum(Calendar.DAY_OF_MONTH); System.out.println("$$$$$$$$$$________" + count); for (int j=0;j<=(count - 2);) { cal.add(Calendar.DAY_OF_MONTH,+1); j++; daylist.add(sdf.format(cal.getTime()));} m++; } return daylist;}//获取昨天的日期public static String getyesterday(){Calendar   cal   =   Calendar.getInstance();cal.add(Calendar.DATE,   -1);String yesterday = new SimpleDateFormat( "yyyy-MM-dd ").format(cal.getTime());return yesterday;}//获取当前年份月份public static String getNowMonth(){Calendar   cal   =   Calendar.getInstance();int year = cal.get(Calendar.YEAR);    int month = cal.get(Calendar.MONTH) + 1; DecimalFormat dfInt=new DecimalFormat("00");String sInt = dfInt.format(month);return year+""+sInt;}
}

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/13392.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息