java獲取昨天日期字符串的方法
本文實例講述了java獲取昨天日期字符串的方法。分享給大家供大家參考,具體如下:
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test
{
/**
* 獲取昨天的日期字符串
*
* @param nowDate
* 當(dāng)前日期的字符串
* @return
*/
public static String getLastDayInfo(String nowDate)
{
String yesterday = "";
int year = 0;
int month = 0;
int day = 0;
try
{
year = Integer.parseInt(nowDate.substring(0, nowDate.indexOf("-")));
month = Integer.parseInt(nowDate.substring(
nowDate.indexOf("-") + 1, nowDate.lastIndexOf("-")));
day = Integer.parseInt(nowDate
.substring(nowDate.lastIndexOf("-") + 1));
// System.out.println("nowYear = " + year);
// System.out.println("nowMonth = " + month);
// System.out.println("dayDay = " + day);
day = day - 1;
if (day == 0)
{
month = month - 1;
if (month == 0)
{
// January
month = 12;
day = 31;
year = year - 1;
}
else
{
// not Jan.
switch (month)
{
// 1|3|5|7|8|10|12) day=31;;
case 1:
day = 31;
break;
case 3:
day = 31;
break;
case 5:
day = 31;
break;
case 7:
day = 31;
break;
case 8:
day = 31;
break;
case 10:
day = 31;
break;
case 12:
day = 31;
break;
// 4|6|9|11) day=30;;
case 4:
day = 30;
break;
case 6:
day = 30;
break;
case 9:
day = 30;
break;
case 11:
day = 30;
break;
case 2:
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
{
// leap year
day = 29;
}
else
day = 28;
}
}
}
String monthStr = "";
String dayStr = "";
if (month < 10)
{
monthStr = "0" + String.valueOf(month);
}
else
{
monthStr = String.valueOf(month);
}
if (day < 10)
{
dayStr = "0" + String.valueOf(day);
}
else
{
dayStr = String.valueOf(day);
}
yesterday = String.valueOf(year) + "-" + monthStr + "-" + dayStr;
} catch (Exception e)
{
e.printStackTrace();
}
return yesterday;
}
public static void main(String[] args) throws Exception
{
System.out.println(getLastDayInfo("2008-03-01"));
System.out.println(getLastDayInfo("2008-01-01"));
SimpleDateFormat sdf = new SimpleDateFormat("MMMM-dd-yyyy");
Date date;
String datetime = "02-14-1984";
try
{
date = sdf.parse(datetime);
System.out.println(sdf.format(date));
} catch (Exception e)
{
System.out.println(e.getMessage());
}
Date d = java.sql.Date.valueOf("2008-07-06");
System.out.println(d.toString());
}
}
更多關(guān)于java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java文件與目錄操作技巧匯總》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。
相關(guān)文章
Java基礎(chǔ)篇_有關(guān)接口和抽象類的幾道練習(xí)題(分享)
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)篇_有關(guān)接口和抽象類的幾道練習(xí)題(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06
maven基礎(chǔ)教程——簡單了解maven的特點與功能
這篇文章主要介紹了Maven基礎(chǔ)教程的相關(guān)資料,文中講解非常細致,幫助大家開始學(xué)習(xí)maven,感興趣的朋友可以了解下2020-07-07
Java Swing JCheckBox復(fù)選框的實現(xiàn)方法
這篇文章主要介紹了Java Swing JCheckBox復(fù)選框的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
MyBatis自定義resultMap三種映射關(guān)系示例詳解
這篇文章主要介紹了MyBatis自定義resultMap三種映射關(guān)系,本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-08-08
SpringBoot整合sharding-jdbc?實現(xiàn)分庫分表操作的示例代碼
在Spring?Boot中使用ShardingSphere的Sharding-JDBC來實現(xiàn)數(shù)據(jù)庫的分庫分表是一個常見的需求,下面就拉具體介紹一下實現(xiàn)步驟,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-04-04
SpringBoot如何優(yōu)雅地使用Swagger2
這篇文章主要介紹了SpringBoot如何優(yōu)雅地使用Swagger2,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07

