/**
02. * 取得指定月份的第一天
03. *
04. * @param strdate String
05. * @return String
06. /
07. public String getMonthBegin(String strdate)
08. {
09. Java.util.Date date = parseFormatDate(strdate);
10. return formatDateByFormat(date,“yyyy-MM”) + “-01”;
11. }
12.
13. /*
14. * 取得指定月份的最后一天
15. *
16. * @param strdate String
17. * @return String
18. /
19. public String getMonthEnd(String strdate)
20. {
21. java.util.Date date = parseFormatDate(getMonthBegin(strdate));
22. Calendar calendar = Calendar.getInstance();
23. calendar.setTime(date);
24. calendar.add(Calendar.MONTH,1);
25. calendar.add(Calendar.DAY_OF_YEAR, -1);
26. return formatDate(calendar.getTime());
27. }
28.
29. /*
30. * 常用的格式化日期
31. *
32. * @param date Date
33. * @return String
34. /
35. public String formatDate(java.util.Date date)
36. {
37. return formatDateByFormat(date,“yyyy-MM-dd”);
38. }
39.
40. /*
41. * 以指定的格式来格式化日期
42. *
43. * @param date Date
44. * @param format String
45. * @return String
46. /
47. public String formatDateByFormat(java.util.Date date,String format)
48. {
49. String result = “”;
50. if(date != null)
51. {
52. try
53. {
54. SimpleDateFormat sdf = new SimpleDateFormat(format);
55. result = sdf.format(date);
56. }
57. catch(Exception ex)
58. {
59. LOGGER.info(“date:” + date);
60. ex.printStackTrace();
61. }
62. }
63. return result;
64. }
65.
66.
67.
68./*
69. * 日期操作
70. *
71. * @author xxx
72. * @version 2.0 jdk1.4.0 tomcat5.1.0 * Updated Date:2005/03/10
73. /
74.public class DateUtil {
75. /*
76. * 格式化日期
77. *
78. * @param dateStr
79. * 字符型日期
80. * @param format
81. * 格式
82. * @return 返回日期
83. /
84. public static java.util.Date parseDate(String dateStr, String format) {
85. java.util.Date date = null;
86. try {
87. java.text.DateFormat df = new java.text.SimpleDateFormat(format);
88. String dt=Normal.parse(dateStr).replaceAll(
89. “-”, “/”);
90. if((!dt.equals(""))&&(dt.length()<format.length())){
91. dt+=format.substring(dt.length()).replaceAll("[YyMmDdHhSs]",“0”);
92. }
93. date = (java.util.Date) df.parse(dt);
94. } catch (Exception e) {
95. }
96. return date;
97. }
98.
99. public static java.util.Date parseDate(String dateStr) {
100. return parseDate(dateStr, “yyyy/MM/dd”);
101. }
102.
103. public static java.util.Date parseDate(java.sql.Date date) {
104. return date;
105. }
106.
107. public static java.sql.Date parseSqlDate(java.util.Date date) {
108. if (date != null)
109. return new java.sql.Date(date.getTime());
110. else
111. return null;
112. }
113.
114. public static java.sql.Date parseSqlDate(String dateStr, String format) {
115. java.util.Date date = parseDate(dateStr, format);
116. return parseSqlDate(date);
117. }
118.
119. public static java.sql.Date parseSqlDate(String dateStr) {
120. return parseSqlDate(dateStr, “yyyy/MM/dd”);
121. }
122.
123.
124. public static java.sql.Timestamp parseTimestamp(String dateStr,
125. String format) {
126. java.util.Date date = parseDate(dateStr, format);
127. if (date != null) {
128. long t = date.getTime();
129. return new java.sql.Timestamp(t);
130. } else
131. return null;
132. }
133.
134. public static java.sql.Timestamp parseTimestamp(String dateStr) {
135. return parseTimestamp(dateStr, “yyyy/MM/dd HH:mm:ss”);
136. }
137.
138. /*
139. * 格式化输出日期
140. *
141. * @param date
142. * 日期
143. * @param format
144. * 格式
145. * @return 返回字符型日期
146. /
147. public static String format(java.util.Date date, String format) {
148. String result = “”;
149. try {
150. if (date != null) {
151. java.text.DateFormat df = new java.text.SimpleDateFormat(format);
152. result = df.format(date);
153. }
154. } catch (Exception e) {
155. }
156. return result;
157. }
158.
159. public static String format(java.util.Date date) {
160. return format(date, “yyyy/MM/dd”);
161. }
162.
163. /*
164. * 返回年份
165. *
166. * @param date
167. * 日期
168. * @return 返回年份
169. /
170. public static int getYear(java.util.Date date) {
171. java.util.Calendar c = java.util.Calendar.getInstance();
172. c.setTime(date);
173. return c.get(java.util.Calendar.YEAR);
174. }
175.
176. /*
177. * 返回月份
178. *
179. * @param date
180. * 日期
181. * @return 返回月份
182. /
183. public static int getMonth(java.util.Date date) {
184. java.util.Calendar c = java.util.Calendar.getInstance();
185. c.setTime(date);
186. return c.get(java.util.Calendar.MONTH) + 1;
187. }
188.
189. /*
190. * 返回日份
191. *
192. * @param date
193. * 日期
194. * @return 返回日份
195. /
196. public static int getDay(java.util.Date date) {
197. java.util.Calendar c = java.util.Calendar.getInstance();
198. c.setTime(date);
199. return c.get(java.util.Calendar.DAY_OF_MONTH);
200. }
201.
202. /*
203. * 返回小时
204. *
205. * @param date
206. * 日期
207. * @return 返回小时
208. /
209. public static int getHour(java.util.Date date) {
210. java.util.Calendar c = java.util.Calendar.getInstance();
211. c.setTime(date);
212. return c.get(java.util.Calendar.HOUR_OF_DAY);
213. }
214.
215. /*
216. * 返回分钟
217. *
218. * @param date
219. * 日期
220. * @return 返回分钟
221. /
222. public static int getMinute(java.util.Date date) {
223. java.util.Calendar c = java.util.Calendar.getInstance();
224. c.setTime(date);
225. return c.get(java.util.Calendar.MINUTE);
226. }
227.
228. /*
229. * 返回秒钟
230. *
231. * @param date
232. * 日期
233. * @return 返回秒钟
234. /
235. public static int getSecond(java.util.Date date) {
236. java.util.Calendar c = java.util.Calendar.getInstance();
237. c.setTime(date);
238. return c.get(java.util.Calendar.SECOND);
239. }
240.
241. /*
242. * 返回毫秒
243. *
244. * @param date
245. * 日期
246. * @return 返回毫秒
247. /
248. public static long getMillis(java.util.Date date) {
249. java.util.Calendar c = java.util.Calendar.getInstance();
250. c.setTime(date);
251. return c.getTimeInMillis();
252. }
253.
254. /*
255. * 返回字符型日期
256. *
257. * @param date
258. * 日期
259. * @return 返回字符型日期
260. /
261. public static String getDate(java.util.Date date) {
262. return format(date, “yyyy/MM/dd”);
263. }
264.
265. /*
266. * 返回字符型时间
267. *
268. * @param date
269. * 日期
270. * @return 返回字符型时间
271. /
272. public static String getTime(java.util.Date date) {
273. return format(date, “HH:mm:ss”);
274. }
275.
276. /*
277. * 返回字符型日期时间
278. *
279. * @param date
280. * 日期
281. * @return 返回字符型日期时间
282. /
283. public static String getDateTime(java.util.Date date) {
284. return format(date, “yyyy/MM/dd HH:mm:ss”);
285. }
286.
287. /*
288. * 日期相加
289. *
290. * @param date
291. * 日期
292. * @param day
293. * 天数
294. * @return 返回相加后的日期
295. /
296. public static java.util.Date addDate(java.util.Date date, int day) {
297. java.util.Calendar c = java.util.Calendar.getInstance();
298. c.setTimeInMillis(getMillis(date) + ((long) day) * 24 * 3600 * 1000);
299. return c.getTime();
300. }
301.
302. /*
303. * 日期相减
304. *
305. * @param date
306. * 日期
307. * @param date1
308. * 日期
309. * @return 返回相减后的日期
310. /
311. public static int diffDate(java.util.Date date, java.util.Date date1) {
312. return (int) ((getMillis(date) - getMillis(date1)) / (24 * 3600 * 1000));
313. }
314.}
315.
316.
317.
318.Calendar now = Calendar.getInstance();
319.int year = now.get(Calendar.YEAR);
320.int date = now.get(Calendar.DAY_OF_MONTH);
321.int month = now.get(Calendar.MONTH) + 1;
322.int hour = now.get(Calendar.HOUR);
323.int min = now.get(Calendar.MINUTE);
324.int sec = now.get(Calendar.SECOND);
325.
326.
327.
328.
329.import java.sql.Timestamp;
330.import java.text.SimpleDateFormat;
331.import java.util.;
332./**
333. *
334. *
335.public class ManageWeek {
336. //判断两个日期是否在同一周
337. boolean isSameWeekDates(Date date1, Date date2) {
338. Calendar cal1 = Calendar.getInstance();
339. Calendar cal2 = Calendar.getInstance();
340. cal1.setTime(date1);
341. cal2.setTime(date2);
342. int subYear = cal1.get(Calendar.YEAR) - cal2.get(Calendar.YEAR);
343. if (0 == subYear) {
344. if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))
345. return true;
346. }
347. else if (1 == subYear && 11 == cal2.get(Calendar.MONTH)) {
348. // 如果12月的最后一周横跨来年第一周的话则最后一周即算做来年的第一周
349. if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))
350. return true;
351. }
352. else if (-1 == subYear && 11 == cal1.get(Calendar.MONTH)) {
353. if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))
354. return true;
355. }
356. return false;
357. }
358.
359.
360. //产生周序列
361. public static String getSeqWeek(){
362. Calendar c = Calendar.getInstance(Locale.CHINA);
363. String week = Integer.toString(c.get(Calendar.WEEK_OF_YEAR));
364. if(week.length()==1)week = “0” + week;
365. String year = Integer.toString(c.get(Calendar.YEAR));
366. return year+week;
367.
368. }
369.
370. //获得周一的日期
371. public static String getMonday(Date date){
372. Calendar c = Calendar.getInstance();
373. c.setTime(date);
374. c.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);
375. return new SimpleDateFormat(“yyyy-MM-dd”).format(c.getTime());
376. }
377.
378.
379. //获得周五的日期
380. public static String getFriday(Date date){
381. Calendar c = Calendar.getInstance();
382. c.setTime(date);
383. c.set(Calendar.DAY_OF_WEEK,Calendar.FRIDAY);
384. return new SimpleDateFormat(“yyyy-MM-dd”).format(c.getTime());
385.
386.
387. }
388. public static void main(String[] args){
389.
390. }
391.
392.}
Java日期操作常用方法
最新推荐文章于 2022-08-21 23:06:20 发布