英语日期差异
近似重复
我如何计算相对时间?
如何计算C#中某人的年龄?
任何人都知道如何在VB.NET或C#中使用两个日期,计算差异并输出英文字符串中的差异? 例如,如果我传递日期’3/10/2009’和’3/25/2009’,函数将返回字符串“15 Days”或者如果我通过日期’3/10/2005’和’3 / 15/2007’,该function将返回“2年5天”
在VB.NET中使用DateDiff函数
这里有一些代码可以给你几年,几个月和几天:
Dim Date1 = Date.Parse("1/10/2008") Dim Date2 = Date.Parse("3/25/2009") Dim Years = DateDiff(DateInterval.Year, Date1, Date2) If Years > 0 Then Date1 = Date1.AddYears(Years) End If Dim Months = DateDiff(DateInterval.Month, Date1, Date2) If Months > 0 Then Date1 = Date1.AddMonths(Months) End If Dim Days = DateDiff(DateInterval.Day, Date1, Date2) Console.WriteLine("{0} years, {1} months, {2} days", Years, Months, Days)
产量:1年,2个月,15天
您可以添加更多逻辑来有条件地显示每个跨度,只有它不为零,并且还使用年份,年份,月份或月份和日期或天数,但此代码应该让您朝着正确的方向前进。
offtopic但相关:如果你想反过来做,那就是将“明天”解析为今天+ 1你可以使用这个: http : //www.codeplex.com/DateTimeEnglishParse
DateDiff可以为您提供正确的数据(两个日期之间的差异)。
但是正确的英语输出是什么? 此函数的参数将很复杂:
PubfunctiondateToEnglish(ByVal文化为Culture.Info,ByVal个性为Personality,ByVal心情为Mood ….)
例如,“14天”的正确答案应该是什么
“一个coupla周”“两周”“14天”“大约半个月”“双周”
上述就是C#学习教程:英语日期差异分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1027344.html