Flutter将时间字符串转为在xxx之前(类似于微信格式)
Posted HackShendi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flutter将时间字符串转为在xxx之前(类似于微信格式)相关的知识,希望对你有一定的参考价值。
hello,I’m Shendi 最近写 Flutter 的时候找不到日期转换的,于是自己手写了个,在这里贴出来
/// 将时间字符串转换成在 xxx 之前的格式
/// author Shendi
String timeToBefore(String time)
DateTime dt = DateTime.parse(time);
int ms = DateTime.now().millisecondsSinceEpoch - dt.millisecondsSinceEpoch;
// 如果是今天,则直接标出时间
if (ms <= 86400000)
String hour = dt.hour < 10 ? 0.toString() + dt.hour.toString() : dt.hour.toString();
String second = dt.second < 10 ? 0.toString() + dt.second.toString() : dt.second.toString();
return hour + ":" + second;
else if (ms <= 172800000)
return "昨天";
else if (ms <= 259200000)
return "前天";
else if (ms <= 604800000)
// 七天以内
switch (dt.weekday)
case 1: return "星期一";
case 2: return "星期二";
case 3: return "星期三";
case 4: return "星期四";
case 5: return "星期五";
case 6: return "星期六";
case 7: return "星期日";
default: return "未知日期";
else
String month = dt.month < 10 ? 0.toString() + dt.month.toString() : dt.month.toString();
String day = dt.day < 10 ? 0.toString() + dt.day.toString() : dt.day.toString();
// 直接年月日
return dt.year.toString() + "-" + month + "-" + day;
以上是关于Flutter将时间字符串转为在xxx之前(类似于微信格式)的主要内容,如果未能解决你的问题,请参考以下文章
在 Flutter 中将 JSON 转换为类似于 android 的 POJO(对象)
如何在 Flutter 中将容器堆叠在键盘上,类似于聊天中的 WhatsApp“更多”部分