我正在使用 Humanizer 来格式化 TimeSpan 对象。它非常方便,但是,我也希望我的字符串格式如下:“xd yh zm as”而不是“x 天,y 小时,z 分钟,a 秒”。我目前只是在 Humanize 完成它的事情之后替换那些子字符串,但感觉非常hacky。
TimeSpan difference = DateTime.Now - myTime;
_myString = difference.Humanize(3, maxUnit:Humanizer.Localisation.TimeUnit.Day, minUnit:Humanizer.Localisation.TimeUnit.Second);
_myString = _myString.Replace(" hours", "h").Replace(" hour", "h").Replace(" minutes", "m").Replace(" minute", "m").Replace(" days", "d").Replace(" day", "d").Replace(" seconds", "s").Replace(" second", "s").Replace(",", "");
有没有更好的方法来做到这一点?我知道一些关于如何格式化 TimeSpan 的问题,但我特别想在使用 Humanizer 时寻找一种更简洁的格式化方式。