Java 要从特定日期获取一个月的开始和结束日期吗
我有一个代码,它给出了一个特定事件的日期,比如:Java 要从特定日期获取一个月的开始和结束日期吗,java,Java,我有一个代码,它给出了一个特定事件的日期,比如: String date=date1.substring(3,5)+"/"+date1.substring(0,2)+"/"+date1.substring(6,10); 我想要上述日期所属月份的开始日期和结束日期 请帮忙。使用 以获取该月的最长日期 cal.getActualMaximum(Calendar.DAY_OF_MONTH) 最低限度 cal.getActualMinimum(Calendar.DAY_OF_MONTH) 注意:c
String date=date1.substring(3,5)+"/"+date1.substring(0,2)+"/"+date1.substring(6,10);
我想要上述日期所属月份的开始日期和结束日期
请帮忙。使用
以获取该月的最长日期
cal.getActualMaximum(Calendar.DAY_OF_MONTH)
最低限度
cal.getActualMinimum(Calendar.DAY_OF_MONTH)
注意:cal
是日历的一个实例
final Calendar calendar = new Calendar();
calendar.setTime(date);
你应该考虑使用<代码> java .UTI.Calase< /C>。您提供了一个
java.util.Date
,然后就可以获得所有字段。一个字段将是年
,日
编辑(供评论)
我将假设在您的代码片段中,date1
是一个字符串。。。您似乎还知道格式(mm/dd/yyyy或dd/mm/yyyy),因此首先需要一个SimpleDateFormat
:
final SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); // or dd/MM/yyyy
然后你需要一种解析日期的方法。。。解析日期意味着从字符串转换为日期对象:
final Date date = dateFormat.parse(date1); // date1 is a date in a string in the given format
你现在有一个日期了。。。您只需使用java.util.Calendar
final Calendar calendar = new Calendar();
calendar.setTime(date);
使用日历
,您可以获得任何与日期相关的信息。一个月的第一天是微不足道的。。。任何月份都从第一天开始。。。但是,对于月的最后一天,您需要获取月的day\u
字段的最大值:
int lastDayOfTheMonth = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
不管怎样,我不是在编造这些东西。。。请随意浏览和。所有这些都在那里,我相信这比我解释的更好。我个人建议在Java中使用几乎所有的日期和时间工作
首先,我将原始值解析为,然后:
(对于本月初,您可以使用original.withDayOfMonth(1)
。所以。。。您正在查看日期还是日期1?DATE1最初的格式是什么?您应该考虑使用<代码> java .UTIL GregorianCalendar < /C>。您提供了一个java.util.Date
,然后就可以获得所有字段。一个字段应该是YEAR
,DAY
等等。@bdares::我正在查看date::String date=date1.子字符串(3,5)+“/”+date1.子字符串(0,2)+“/”+date1.子字符串(6,10);给我日期……请告诉我如何将其格式化为LocalDate。@sagarg:正如我在评论中提到的,您需要将其解析为LocalDate。您不需要创建单独的字符串,只需要创建一个适当的DateTimeFormatter
(使用正确的模式)并对其进行解析。