特定の時間領域(フランス時間帯)と特定の月の日付(10月30,31)のNsDateをNSDateコンポーネントに変換する際に問題が発生しました。私はこの問題が日の節約のために起こると思う。この問題をどのように克服できるのかをお勧めします。 以下の私のコードスニペット、私は10月30,31以外間違っdateComponents値を取得していNSDateをNSDateコンポーネントに変換するとNSDateComponentsの値が正しくありません
public static NSDate GetDate(int year, int month, int date, int hour, int mins, int secs)
{
NSCalendar calendar = NSCalendar.CurrentCalendar;
NSDate today = new NSDate();
// Get the year, month, day from the date
NSDateComponents startDateComponents = calendar.Components(
NSCalendarUnit.Year | NSCalendarUnit.Month | NSCalendarUnit.Day, today);
// Set the hour, minute, second
startDateComponents.Year = year;
startDateComponents.Month = month;
startDateComponents.Day = date;
startDateComponents.Hour = hour;
startDateComponents.Minute = mins;
startDateComponents.Second = secs;
return calendar.DateFromComponents(startDateComponents);
}
NSDate date = GetDate(2017, 10, 30, 6, 0, 0);
NSDateComponents dateComp= NSCalendar.CurrentCalendar.Components(NSCalendarUnit.Year | NSCalendarUnit.Month | NSCalendarUnit.Day | NSCalendarUnit.Hour ,date);
見つけてください。私は日付を変換するために何かを逃したことをお勧めします。
「私は間違ったdateComponentsを取得しました。 – Larme
私は前の日付の値を取得しています。たとえば、oct 30を設定した場合、oct 29を取得しています。 – Siva