我有一個DateTime
的實例,我想將其格式化爲一個String。我怎麼做?我想把日期變成一個字符串,比如「2013-04-20」。如何用Dart格式化日期?
20
A
回答
35
您可以使用intl
package來格式化日期。
對於en_US
格式,這是相當簡單:
import 'package:intl/intl.dart';
main() {
var now = new DateTime.now();
var formatter = new DateFormat('yyyy-MM-dd');
String formatted = formatter.format(now);
print(formatted); // something like 2013-04-20
}
有格式化多種選擇。從文檔:
ICU Name Skeleton
-------- --------
DAY d
ABBR_WEEKDAY E
WEEKDAY EEEE
ABBR_STANDALONE_MONTH LLL
STANDALONE_MONTH LLLL
NUM_MONTH M
NUM_MONTH_DAY Md
NUM_MONTH_WEEKDAY_DAY MEd
ABBR_MONTH MMM
ABBR_MONTH_DAY MMMd
ABBR_MONTH_WEEKDAY_DAY MMMEd
MONTH MMMM
MONTH_DAY MMMMd
MONTH_WEEKDAY_DAY MMMMEEEEd
ABBR_QUARTER QQQ
QUARTER QQQQ
YEAR y
YEAR_NUM_MONTH yM
YEAR_NUM_MONTH_DAY yMd
YEAR_NUM_MONTH_WEEKDAY_DAY yMEd
YEAR_ABBR_MONTH yMMM
YEAR_ABBR_MONTH_DAY yMMMd
YEAR_ABBR_MONTH_WEEKDAY_DAY yMMMEd
YEAR_MONTH yMMMM
YEAR_MONTH_DAY yMMMMd
YEAR_MONTH_WEEKDAY_DAY yMMMMEEEEd
YEAR_ABBR_QUARTER yQQQ
YEAR_QUARTER yQQQQ
HOUR24 H
HOUR24_MINUTE Hm
HOUR24_MINUTE_SECOND Hms
HOUR j
HOUR_MINUTE jm
HOUR_MINUTE_SECOND jms
HOUR_MINUTE_GENERIC_TZ jmv
HOUR_MINUTE_TZ jmz
HOUR_GENERIC_TZ jv
HOUR_TZ jz
MINUTE m
MINUTE_SECOND ms
SECOND s
對於非en_US日期,您需要顯式加載區域設置。有關更多信息,請參閱https://www.dartdocs.org/documentation/intl/latest/intl/DateFormat-class.html。
4
這將工作太:
DateTime today = new DateTime.now();
String dateSlug ="${today.year.toString()}-${today.month.toString().padLeft(2,'0')}-${today.day.toString().padLeft(2,'0')}";
print(dateSlug);
相關問題
- 1. 如何格式化日期?
- 2. 如何格式化日期?
- 3. 如何格式化日期
- 4. 格式化日期。如何將int值格式化爲日期格式?
- 5. 如何使用StringBuilder格式化日期
- 6. 如何使用格式化爲日期
- 7. 如何使用php格式化日期?
- 8. 如何使用xlst格式化日期?
- 9. 如何使用NSDateFormatter格式化日期
- 10. 如何使用preg_split格式化日期
- 11. 格式化日期?
- 12. 日期格式化
- 13. 用Java格式化日期
- 14. 用Perl格式化日期格式
- 15. 格式化日曆日期
- 16. 日期格式化程序沒有正確格式化日期
- 17. 格式化JSON日期格式化的日期基於區域
- 18. 如何格式化DatePicker以顯示日期格式日/月/年?
- 19. NSDateFormatter:如何縮短格式化日期?
- 20. 如何在Perl中格式化日期?
- 21. 如何格式化日期時間?
- 22. 如何在Flash中格式化日期?
- 23. 如何在java中格式化日期?
- 24. 如何在PHPExcel中格式化日期?
- 25. 如何在PHP中格式化日期
- 26. 如何格式化java日期
- 27. in angularJS如何格式化日期()
- 28. 如何在Moment.js中格式化日期
- 29. 如何在xslt中格式化日期?
- 30. 如何在JSTL中格式化日期
是國際壞了嗎?未捕獲的錯誤:FileSystemException:無法打開文件,路徑='E:\ dart \ ws \ web \ packages \ intl \ intl.dart'(操作系統錯誤:系統找不到指定的路徑 – javapadawan 2014-09-21 17:47:36
有什麼方法可以將毫秒格式? – Kaspi 2015-12-01 12:08:59