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 block
e.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;
}
}
相關文章
- 日期時間處理包 Carbon
- Java 日期和時間 API:實用技巧與示例 - 輕鬆處理日期和時間JavaAPI
- Laravel日期時間處理包 CarbonLaravel
- 字串和日期時間的處理字串
- Pandas中時間和日期處理
- LocalDateTime替代Date操作處理日期時間LDA
- java時間處理Java
- Calendar類在Java中的應用與日期時間處理Java
- Java SimpleDateFormat處理日期與字串的轉換JavaORM字串
- python時間戳和時間字串的各種轉換Python時間戳字串
- 各種Fourier變換
- LocalDate,LocalDateTime和處理時間、日期工具類LDA
- 全網最全!徹底弄透Java處理GMT/UTC日期時間Java
- [工具]PHP 中的日期時間處理利器 – CarbonPHP
- Java日期和時間Java
- java localdate日期格式處理JavaLDA
- JavaScript實時變化時間日期JavaScript
- JavaScript 時間日期格式轉換JavaScript
- Java中對時間的處理Java
- python字串轉換為日期時間Python字串
- JavaScript 時間日期轉換成中文JavaScript
- Java8中的時間處理Java
- java新特性處理時間工具類Java
- Java 8 的日期時間工具Java
- Java 中的時間日期 APIJavaAPI
- Java 8 的時間日期 APIJavaAPI
- php日期時間如何轉換為字串PHP字串
- golang日期字串與時間戳轉換Golang字串時間戳
- 在java中進行日期時間比較的4種方法Java
- golang版carbon日期時間處理庫,PHP開發者的福利GolangPHP
- PHP 時間處理PHP
- MySQL 獲得當前日期時間(以及時間的轉換)MySql
- 處理日期和時區轉換:為什麼正確的 UTC 轉換很重要
- Java 8 日期和時間的APIJavaAPI
- Java 8的18個常用日期處理Java
- python 各種時間格式轉化Python
- Clickhouse SQL日期處理函式及案例分享SQL函式
- Hive 日期處理Hive