0
의 시대에서 시간 간격으로 정확한 시간을 가져올 수 없습니다이이 무엇 인아이폰 OS
UInt64 time = 1490237914000;
내가 정확한 시간 표현
- (NSString *)commonRepresentationForTimerValue:(UInt64)timerValue
{
NSDate *date = [NSDate dateWithTimeIntervalSince1970:timerValue];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [calendar components:(NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitWeekday) fromDate:date];
NSInteger hour = [components hour];
NSInteger minute = [components minute];
NSInteger weekDay = [components weekday];
NSString *hourString;
if(hour < 10)
{
hourString = [NSString stringWithFormat:@"%@%li", @"0", (long)hour];
}
else
{
hourString = [@(hour) stringValue];
}
NSString *minuteString;
if(minute < 10)
{
minuteString = [NSString stringWithFormat:@"%@%li", @"0", (long)minute];
}
else
{
minuteString = [@(minute) stringValue];
}
NSString *weekDayString;
switch(weekDay)
{
case 1: weekDayString = @"Sunday"; break;
case 2: weekDayString = @"Monday"; break;
case 3: weekDayString = @"Tuesday"; break;
case 4: weekDayString = @"Wednesday"; break;
case 5: weekDayString = @"Thursday"; break;
case 6: weekDayString = @"Friday"; break;
case 7: weekDayString = @"Saturday"; break;
}
NSString *timerString = [NSString stringWithFormat:@"%@:%@ %@", hourString, minuteString, weekDayString];
return timerString;
}
을 얻기 위해 다음과 같은 방법을 사용하여 밀리 초 내 시간 값입니다 위의 코드에서 얻고 있습니다 :
2017-03-23 12:20:02.318 AutoLayoutTest[21746:3371016] Time is 08:06 Tuesday
출력이 잘못되었습니다 (잘못된 것 같습니다).
나는 내가 다음에이 코드 줄NSDate *date = [NSDate dateWithTimeIntervalSince1970:timerValue];
을 변경하려고
Time is 10:58 Friday
올바른 출력을 가지고 자바
public static void main(String[] args)
{
Long timer = 1490237914000l;
final Calendar calendar = Calendar.getInstance();
DateFormat formatter = new SimpleDateFormat("hh:mm");
calendar.setTimeInMillis(timer);
String weekDay = null;
switch (calendar.get(Calendar.DAY_OF_WEEK))
{
case 0: weekDay = "Sunday"; break;
case 1: weekDay = "Monday"; break;
case 2: weekDay = "Tuesday"; break;
case 3: weekDay = "Wednesday"; break;
case 4: weekDay = "Thursday"; break;
case 5: weekDay = "Friday"; break;
case 6: weekDay = "Saturday"; break;
}
System.out.println("Time is " + formatter.format(calendar.getTime()) + " " + weekDay);
}
와 같은 값을 테스트 :
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:timerValue];
및
NSDate *date = [NSDate dateWithTimeIntervalSinceReferenceDate:timerValue];
는 여전히 잘못된 결과를 얻을. 어디에 문제가 시간 가치는 시대까지의 시간이기 때문에
나는 몰라, 그리고 자바에서 작동합니다. 내가 여기에서 오해하고있는 것이 틀림 없다. 그러나 나는 그것을 결정할 수 없다.