時間をタイムスタンプに変換して、個々の年、月、日、時、分、秒、ミリ秒を取得します。
import android.annotation.SuppressLint;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;
public class DateUtils {
public final static String format_yyyyMMddhhmmss = "yyyy-MM-dd HH:mm:ss";
public final static String format_yyyyMMddhhmm = "yyyy-MM-dd HH:mm";
public final static String format_yyyyMMddhh = "yyyy-MM-dd HH";
public final static String format_yyyyMMdd = "yyyy-MM-dd";
public final static String format_dd_hh = "dd-HH";
public final static String format_MM_dd = "MM-dd";
public final static String format_yy_MM = "yy-MM";
public final static String format_hhmmss = "HH:mm:ss";
public final static String format_hhmm = "HH:mm";
public final static String format_ss = "ss";
public final static String format_mm = "mm";
public final static String format_hh = "HH";
public final static String format_dd = "dd";
public final static String format_MM = "MM";
public static String formatDateToString(Date date, String formatDate) {
if (date == null) {
return null;
}
@SuppressLint("SimpleDateFormat") DateFormat format = new SimpleDateFormat(formatDate);
String resStr = format.format(date);
return resStr;
}
public static Date formatStringToDate(String dateStr, String formatDate) {
if (dateStr == null) {
return null;
}
@SuppressLint("SimpleDateFormat") DateFormat format = new SimpleDateFormat(formatDate);
Date date = null;
try {
date = format.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
public static String convertDateFormatOfString(String dateStr, String oldFormatDate, String newFormatDate) {
if (dateStr == null) {
return null;
}
@SuppressLint("SimpleDateFormat") DateFormat format = new SimpleDateFormat(oldFormatDate);
Date date = null;
try {
date = format.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
String resStr = null;
@SuppressLint("SimpleDateFormat") DateFormat format1 = new SimpleDateFormat(newFormatDate);
if (date != null) {
resStr = format1.format(date);
}
return resStr;
}
public static String getFormat_hhmmssSplit(String dateStr, String formatDate) {
if (dateStr == null) {
return null;
}
String[] timeArray = dateStr.split(":");
if (timeArray.length < 3) {
return null;
}
String temp;
switch (formatDate) {
case format_hh:
temp = timeArray[0];
break;
case format_mm:
temp = timeArray[1];
break;
default:
temp = timeArray[3];
}
return temp;
}
public static int dateCompare(Date date1, Date date2) {
if (date1 == null || date2 == null) {
return -1;
}
return date1.compareTo(date2);
}
public static int dateCompare(String date1, String date2, String formatDate) {
if (date1 == null || date2 == null || formatDate == null) {
return -1;
}
Date d1 = formatStringToDate(date1, formatDate);
Date d2 = formatStringToDate(date2, formatDate);
return dateCompare(d1, d2);
}
public static String getStrTime(String cc_time, String pattern) {
String re_StrTime = null;
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
long lcc_time = Long.parseLong(cc_time);
re_StrTime = sdf.format(new Date(lcc_time * 1000L));
return re_StrTime;
}
public static String dateToStamp(String time) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = simpleDateFormat.parse(time);
long ts = date.getTime();
return String.valueOf(ts);
}
public static String stampToDate(long timeMillis, String pattern) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern);
Date date = new Date(timeMillis);
return simpleDateFormat.format(date);
}
public static Date getTimeYMDHHmmss(long longtime) throws ParseException {
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(sd.format(new Date(longtime)));
return date;
}
public static String getcst(Date da) throws ParseException {
SimpleDateFormat sim1 = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
SimpleDateFormat sim2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String s1 = String.valueOf(da);
Date dates = sim1.parse(s1);
String f = sim2.format(dates);
return f;
}
public static Long getLongDate(String formatTime, String pattern) {
long time = 0;
try {
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
Date parse = sdf.parse(formatTime);
time = parse.getTime();
} catch (ParseException e) {
e.printStackTrace();
}
return time;
}
public static Date StringToDate(String str) throws ParseException {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = (Date) formatter.parse(str);
return date;
}
public static long curTimeMillis() {
return System.currentTimeMillis();
}
public static long curTimeMillis_3m() {
return System.currentTimeMillis() - 1000 * 60;
}
public static String getYesterdayDateString() {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, -1);
SimpleDateFormat dateFormat = new SimpleDateFormat(format_yyyyMMddhh);
return dateFormat.format(calendar.getTime());
}
public static String getYesterdayMonthString() {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH , -1);
SimpleDateFormat dateFormat = new SimpleDateFormat(format_yyyyMMddhh);
return dateFormat.format(calendar.getTime());
}
public static String getYesterdayYearString() {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.YEAR, -1);
SimpleDateFormat dateFormat = new SimpleDateFormat(format_yyyyMMddhh);
return dateFormat.format(calendar.getTime());
}
public static String getCalendar() {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DATE);
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);
int dayOfYear = calendar.get(Calendar.DAY_OF_YEAR);
return "" + year + "年" + month + "月" + day + "日" + hour + "时" + minute + "分" + second + "秒";
}
public static int getCalendar_year() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.YEAR);
}
public static int getCalendar_month() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.MONTH) + 1;
}
public static int getCalendar_day() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.DATE);
}
public static int getCalendar_hour() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.HOUR_OF_DAY);
}
public static int getCalendar_minute() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.MINUTE);
}
public static int getCalendar_second() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.SECOND);
}
public static int getCalendar_dayOfWeek() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.DAY_OF_WEEK);
}
public static int getCalendar_dayOfMonth() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.DAY_OF_MONTH);
}
public static int getCalendar_dayOfYear() {
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.DAY_OF_YEAR);
}
public static Long getIntegralPoint() {
Date date = new Date();
Calendar ca = Calendar.getInstance();
ca.set(Calendar.MINUTE, 0);
ca.set(Calendar.SECOND, 0);
ca.set(Calendar.MILLISECOND, 0);
date = ca.getTime();
return date.getTime();
}
public static Long getTodayZero() {
Date date = new Date();
Calendar ca = Calendar.getInstance();
ca.set(Calendar.DECEMBER, 0);
ca.set(Calendar.MINUTE, 0);
ca.set(Calendar.SECOND, 0);
ca.set(Calendar.MILLISECOND, 0);
date = ca.getTime();
return date.getTime();
}
public static Long getTodayZeroMiao() {
Date date = new Date();
Calendar ca = Calendar.getInstance();
ca.set(Calendar.DECEMBER, 0);
ca.set(Calendar.MINUTE, 0);
ca.set(Calendar.SECOND, 0);
long timeInMillis = ca.getTimeInMillis();
return (timeInMillis / 1000);
}
public static Long getTodayZero(Date dates) {
Calendar ca = Calendar.getInstance();
ca.setTime(dates);
ca.set(Calendar.DECEMBER, 0);
ca.set(Calendar.MINUTE, 0);
ca.set(Calendar.SECOND, 0);
ca.set(Calendar.MILLISECOND, 0);
dates = ca.getTime();
return dates.getTime();
}
}