Repository navigation
Expand file tree
/
Copy pathDateUtils.java
More file actions
96 lines (80 loc) · 3.09 KB
/
Copy pathDateUtils.java
File metadata and controls
96 lines (80 loc) · 3.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package com.pedrocarrillo.expensetracker.utils;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/**
* Created by Pedro on 9/21/2015.
*/
public class DateUtils {
public static Calendar setDateStartOfDay(Calendar calendar){
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.clear(Calendar.MINUTE);
calendar.clear(Calendar.SECOND);
calendar.clear(Calendar.MILLISECOND);
return calendar;
}
public static Date getFirstDateOfCurrentMonth() {
Calendar cal = setDateStartOfDay(Calendar.getInstance());
cal.set(Calendar.DAY_OF_MONTH, Calendar.getInstance().getActualMinimum(Calendar.DAY_OF_MONTH));
return cal.getTime();
}
public static Date getLastDateOfCurrentMonth() {
Calendar cal = setDateStartOfDay(Calendar.getInstance());
cal.set(Calendar.DAY_OF_MONTH, Calendar.getInstance().getActualMaximum(Calendar.DAY_OF_MONTH));
cal.add(Calendar.DATE, 1);
return cal.getTime();
}
public static Date getRealLastDateOfCurrentMonth() {
Calendar cal = setDateStartOfDay(Calendar.getInstance());
cal.set(Calendar.DAY_OF_MONTH, Calendar.getInstance().getActualMaximum(Calendar.DAY_OF_MONTH));
return cal.getTime();
}
public static Date getFirstDateOfCurrentWeek() {
return getCalendarFirstDayOfCurrentWeek().getTime();
}
public static Calendar getCalendarFirstDayOfCurrentWeek() {
Calendar cal = setDateStartOfDay(Calendar.getInstance());
cal.set(Calendar.DAY_OF_WEEK, cal.getFirstDayOfWeek());
return setDateStartOfDay(cal);
}
public static Date getLastDateOfCurrentWeek(){
Calendar cal = setDateStartOfDay(Calendar.getInstance());
// Calendar.getInstance().getActualMaximum(Calendar.DAY_OF_WEEK);
cal.set(Calendar.DAY_OF_WEEK, 7);
cal.add(Calendar.DATE, 2);
return cal.getTime();
}
public static Date getRealLastDateOfCurrentWeek() {
Calendar cal = setDateStartOfDay(Calendar.getInstance());
cal.set(Calendar.DAY_OF_WEEK, 7);
cal.add(Calendar.DATE, 1);
return cal.getTime();
}
public static Date getTomorrowDate() {
Calendar cal = setDateStartOfDay(Calendar.getInstance());
cal.add(Calendar.DATE, 1);
return cal.getTime();
}
public static Date addDaysToDate(Date currentDate, int numDays) {
Calendar c = Calendar.getInstance();
c.setTime(currentDate);
c.add(Calendar.DATE, numDays);
return c.getTime();
}
public static List<Date> getWeekDates() {
Calendar cal = getCalendarFirstDayOfCurrentWeek();
List<Date> dateList = new ArrayList<>();
for (int i=0; i<7; i++) {
dateList.add(cal.getTime());
cal.add(Calendar.DAY_OF_WEEK, 1);
}
return dateList;
}
public static boolean isToday(Date date) {
return android.text.format.DateUtils.isToday(date.getTime());
}
public static Date getToday() {
return setDateStartOfDay(Calendar.getInstance()).getTime();
}
}