>백엔드 개발 >C++ >C#에서 DateTime 개체를 가장 가까운 X분으로 반올림하려면 어떻게 해야 합니까?

C#에서 DateTime 개체를 가장 가까운 X분으로 반올림하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2025-01-06 19:07:41981검색

How Can I Round Up a DateTime Object to the Nearest X Minutes in C#?

DateTime을 X분 단위로 반올림

질문:

어떻게 반올림할 수 있나요? DateTime 객체를 지정된 수의 가장 가까운 배수로 올립니다. 분?

사용 사례:

이 기술은 약속을 예약하거나 특정 날짜에 데이터를 정렬하는 등 시간을 일정한 간격으로 맞춰야 하는 시나리오에 유용합니다. 기간.

해결책:

다음 C# 함수인 RoundUp은 다음 반올림 작업을 수행합니다.

public static DateTime RoundUp(DateTime dt, TimeSpan d)
{
    return new DateTime((dt.Ticks + d.Ticks - 1) / d.Ticks * d.Ticks, dt.Kind);
}

예:

DateTime 값을 가장 가까운 15분으로 반올림하려면 다음 코드를 사용합니다.

var dt1 = RoundUp(DateTime.Parse("2011-08-11 16:59"), TimeSpan.FromMinutes(15));

이렇게 하면 dt1이 다음으로 설정됩니다. {11/08/2011 17:00:00}. 마찬가지로 원래 값이 2011-08-11 17:01이면 dt1은 {11/08/2011 17:15:00}으로 설정됩니다.

TimeSpan.FromMinutes(15) 인수를 조정하여 에서는 원하는 반올림 간격을 지정할 수 있습니다. 이 방법은 시간을 특정 간격으로 반올림하는 편리한 방법을 제공하므로 애플리케이션에서 정확한 시간 계산을 수행할 수 있습니다.

위 내용은 C#에서 DateTime 개체를 가장 가까운 X분으로 반올림하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.