Tôi đang thử ngôn ngữ Google Dart mới và tôi không biết cách lấy ngày mới nhất của tháng hiện tại?Cách tìm ngày cuối cùng của tháng?
này mang lại cho tôi ngày hiện tại:
var now = new DateTime.now();
Tôi đang thử ngôn ngữ Google Dart mới và tôi không biết cách lấy ngày mới nhất của tháng hiện tại?Cách tìm ngày cuối cùng của tháng?
này mang lại cho tôi ngày hiện tại:
var now = new DateTime.now();
Dưới đây là một cách để tìm thấy nó:
var now = new DateTime.now();
// Find the last day of the month.
var beginningNextMonth = (now.month < 12) ? new DateTime(now.year, now.month + 1, 1) : new DateTime(now.year + 1, 1, 1);
var lastDay = beginningNextMonth.subtract(new Duration(days: 1)).day;
print(lastDay); // 28 for February
Tôi có ngày hiện tại, vì vậy tôi xây dựng ngày đầu tiên của tháng tiếp theo, và sau đó trừ một ngày ra khỏi nó. Tôi cũng đang tính đến sự thay đổi của năm.
Cập nhật: Đây là mã ngắn hơn một chút cho những điều tương tự, nhưng lấy cảm hứng từ Chris zero-trick:
var now = new DateTime.now();
// Find the last day of the month.
var lastDayDateTime = (now.month < 12) ? new DateTime(now.year, now.month + 1, 0) : new DateTime(now.year + 1, 1, 0);
print(lastDayDateTime.day); // 28 for February
Nó có kiểm tra bổ sung/code, trong trường hợp bạn muốn làm điều này lập trình (ví dụ: bạn có một tháng cụ thể làm số nguyên).
Cung cấp một giá trị ngày của zero cho tháng tiếp theo mang đến cho bạn ngày cuối cùng của tháng trước
var date = new DateTime(2013,3,0);
print(date.day); // 28 for February
Đây có phải là sử dụng hợp lý thực tế của DateTime không? Nếu có, chúng tôi có muốn cập nhật tài liệu cho DateTime không? –
Gọn gàng. Tôi nhận ra rằng điều này vẫn như trong tương lai? –
Có. đây là hành vi được bảo đảm. –
Lưu ý rằng trừ 1 ngày (= 24 giờ) sẽ không hoạt động nếu bạn là chính xác vào ngày nơi ánh sáng ban ngày -savings được tắt. Trong trường hợp này nó có thể không quan trọng vì ngày chuyển đổi không bao giờ (?) Vào ngày cuối cùng của tháng. –
Bạn nói đúng. Và có ngày chuyển đổi vào ngày cuối cùng của một tháng. –