如何将Gregorian字符串转换为Gregorian Calendar? [英] How to convert Gregorian string to Gregorian Calendar?
问题描述
我必须根据日历的日期计算一些东西,但我收到了完整的格里高利日历的字符串值。
例如接收到 {可能是 - new GregorianCalendar()。toString()} as String: - java.util.GregorianCalendar [time = 1410521241348,areFieldsSet = true,areAllFieldsSet = true,lenient = true,zone = sun.util.calendar.ZoneInfo [id =Europe / London,offset = 0,dstSavings = 3600000,useDaylight = true,transitions = 242 ,lastRule = java.util.SimpleTimeZone [id = Europe / London,offset = 0,dstSavings = 3600000,useDaylight = true,startYear = 0,startMode = 2,startMonth = 2,startDay = -1,startDayOfWeek = 1,startTime = 3600000,startTimeMode = 2,endMode = 2,endMonth = 9,endDay = -1,endDayOfWeek = 1,endTime = 3600000,endTimeMode = 2]],firstDayOfWeek = 1,minimalDaysInFirstWeek = 1,ERA = 1,YEAR = = 8,WEEK_OF_YEAR = 37,WEEK_OF_MONTH = 2,DAY_OF_MONTH = 12,DAY_OF_YEAR = 255,DAY_OF_WEEK = 6,DAY_OF_WEEK_IN_MONTH = 2,AM_PM = 1,HOUR = 0,HOUR_OF_DAY = 12,MINUTE = 27,SECOND = 21,MILLISECOND = 348 ,ZONE_OFFSET = 0,DST_OFFSET = 3600000]
我想提取日历的日期值以进一步计算。
其他答案太复杂或错误。以下将为您提供自纪元以来的毫秒,这是一个通用时间戳,可以轻松转换为大多数时间表示类,包括日历
日期
:
模式gregorianPattern = Pattern.compile util.GregorianCalendar\\ [time =(\\d +)。*);
Matcher matcher = gregorianPattern.matcher(param);
if(matcher.matches()){
return Long.parseLong(matcher.group(1));
}
I have to compute something based on the Calendar's date, but I am receiving the complete Gregorian Calendar's String value.
Eg i/p received {may be - "new GregorianCalendar().toString()"} as String :- java.util.GregorianCalendar[time=1410521241348,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Europe/London",offset=0,dstSavings=3600000,useDaylight=true,transitions=242,lastRule=java.util.SimpleTimeZone[id=Europe/London,offset=0,dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=-1,startDayOfWeek=1,startTime=3600000,startTimeMode=2,endMode=2,endMonth=9,endDay=-1,endDayOfWeek=1,endTime=3600000,endTimeMode=2]],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2014,MONTH=8,WEEK_OF_YEAR=37,WEEK_OF_MONTH=2,DAY_OF_MONTH=12,DAY_OF_YEAR=255,DAY_OF_WEEK=6,DAY_OF_WEEK_IN_MONTH=2,AM_PM=1,HOUR=0,HOUR_OF_DAY=12,MINUTE=27,SECOND=21,MILLISECOND=348,ZONE_OFFSET=0,DST_OFFSET=3600000]
I want to extract the Calendar's date value to process further computation.
Other answers are too complicated or wrong. The following will give you the milliseconds since the epoch, which is a universal timestamp that you can easily convert to most time representation classes, including Calendar
or Date
:
Pattern gregorianPattern = Pattern.compile("^java.util.GregorianCalendar\\[time=(\\d+).*");
Matcher matcher = gregorianPattern.matcher(param);
if(matcher.matches()) {
return Long.parseLong(matcher.group(1));
}
这篇关于如何将Gregorian字符串转换为Gregorian Calendar?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!