Jak znaleźć datę początkową i nazwę (1, 2, 3 itd.) Kwartału od określonej daty?Oblicz datę początkową i nazwę kwartału z podanej daty
32
A
Odpowiedz
95
Coś (niesprawdzone):
DateTime date;
int quarterNumber = (date.Month-1)/3+1;
DateTime firstDayOfQuarter = new DateTime(date.Year, (quarterNumber-1)*3+1,1);
DateTime lastDayOfQuarter = firstDayOfQuarter.AddMonths(3).AddDays(-1);
5
int GetQuarterName(DateTime myDate)
{
return (int)Math.Ceiling(myDate.Month/3.0);
}
DateTime GetQuarterStartingDate(DateTime myDate)
{
return new DateTime(myDate.Year,(3*GetQuarterName(myDate))-2,1);
}
GetQuarterName
dostaje "obok" wartość całkowitą z bieżącego miesiąca/numer 3.
GetQuarterStartingDate
wykorzystuje wyjście z GetQuarterName
wypracować wartość miesiąca, część roku z pierwotną datą i 1, aby reprezentować pierwszy dzień miesiąca do powrotu.
(Przepraszam za co nie ma sensu, mam grypę. :()
2
https://msdn.microsoft.com/ru-ru/library/ms127415(v=vs.110).aspx
using Microsoft.VisualBasic;
var quarter = DateAndTime.DatePart(DateInterval.Quarter, (DateTime)dateTimePickerDateTime.Value);
2
var date = new DateTime(2015, 3, 15);
var quarter = (date.Month + 2)/3;
var quarterStartMonth = 3 * quarter - 2;
var quarterStartDate = new DateTime(date.Year, quarterStartMonth, 1);
0
Prostsza dwa liner z demo żywo here + nacisnąć F8 uruchomić
var date = DateTime.Now; //Give you own DateTime
int offset = 2, monthsInQtr = 3;
var quarter = (date.Month + offset)/monthsInQtr; //To find which quarter
var totalMonths = quarter * monthsInQtr;
var startDateInQtr = new DateTime(date.Year, totalMonths - offset, 1); //start date in quarter
Jeśli szukasz na ostatniego dnia stosowania ćwierć DateTime.DaysInMonth
var endDateInQtr = new DateTime(date.Year, totalMonths, DateTime.DaysInMonth(date.Year, totalMonths));
Powiązane problemy
- 1. Oblicz datę początkową i końcową poprzedniego tygodnia
- 2. Oblicz ostatni dzień kwartału
- 3. Oblicz wiek z daty urodzenia
- 4. Najbliższa data w wektorze do podanej daty
- 5. Oblicz datę wczoraj w JavaScript
- 6. Znajdź datę pierwszego poniedziałku po podanej dacie
- 7. Jak uzyskać datę rozpoczęcia i zakończenia daty w Datach?
- 8. Uzyskaj numer tygodnia od podanej daty
- 9. Jak obliczyć numer tygodnia dla podanej daty Android
- 10. PHPExcel pobiera nazwę kolumny względem podanej kolumny
- 11. Połączyć ciąg daty i godziny w jedną datę z javascript
- 12. Jak mogę obliczyć/znaleźć numer tygodnia z podanej daty?
- 13. Jak ustawić datę wyboru daty?
- 14. R: plm - rok naprawiono efekty - dane z roku i kwartału
- 15. Excel: Oblicz częstotliwość określonego miesiąca w kolumnie z komórkami daty.
- 16. Jak obsługiwać datę i godzinę w PHP?
- 17. Ustaw domyślną datę wyboru daty WPF na bieżącą datę
- 18. iPhone, jak ustawić datę wybierania daty mojej daty w kodzie?
- 19. Selektor daty daty - ustawienie daty i czasu otwarcia
- 20. Przechowuj niepełną datę w polu daty MySQL
- 21. Dlaczego filtr daty Angular wyświetla niewłaściwą datę?
- 22. SQL - Znajdź datę najbliżej bieżącej daty
- 23. Oblicz różnicę między wprowadzoną datą i godziną?
- 24. Javascript Porównaj datę i godzinę
- 25. Wyodrębnij niekonsekwentnie sformatowaną datę z ciągu znaków (analiza daty, NLP)
- 26. Skompiluj datę i godzinę
- 27. Znajdź pierwszy i ostatni dzień ostatniego kwartału w ORACLE
- 28. Identyfikator użytkownika Tweepy z podanej nazwy
- 29. mysql oblicz sekund pomiędzy dwoma daty/godziny dla każdego dnia
- 30. PHP Sprawdź, czy data minęła do określonej daty podanej w określonym formacie.
może Pan wyjaśnić, co robi Twój kod? – roosteronacid
@roosteronacid: '(quarterNumber-1) * 3 + 1' poda numer miesiąca pierwszego miesiąca danego kwartału. Kod tworzy 'DateTime' dla pierwszego dnia tego miesiąca roku. To pierwszy dzień kwartału. Następnie dodaje trzy miesiące. To będzie pierwszy dzień * następnego * kwartału, więc ostatni dzień poszukiwanego kwartału będzie dzień wcześniejszy (".AddDays (-1)" robi tę sztuczkę). –
Zobacz odpowiedź @il_guru tutaj => http://stackoverflow.com/questions/11154673/get-the-correct-week-number-of-a-given-date – mynkow