有没有人有一个简单的功能可以将日期转换为简单的字符串(使用.Net)?
例如,2009年10月14日将会出现"今天",2009年10月13日会读到"昨天",而09年10月7日会读到"1周前"等等......
干杯,蒂姆
我有这段代码在过去花了一些时间并生成一个可读的字符串来表示它多久以前.
我本以为Timespan.Hours会给你几个小时,即使它过去多了一天,但它看起来像是分解成它的单独组件(天,月等).我怎么会在几小时前得到(即使它超过1天?
有没有更清晰的方法来编写这种类型的代码,因为它似乎非常spagetti-ish.
这是代码
DateTime when = GetDateTimeinPast();
TimeSpan ts = DateTime.Now.Subtract(when);
switch (ts.Days)
{
case 0:
if (ts.Hours < 1)
b.Append( ts.Minutes + " minutes ago");
else
b.Append( ts.Hours + " hours ago");
break;
case 1:
b.Append( " yesterday");
break;
case 2:
case 3:
case 4:
b.Append( "on " + when.DayOfWeek.ToString());
break;
default:
b.Append(ts.Days + " days ago");
break;
}
Run Code Online (Sandbox Code Playgroud) 我需要像今天、昨天、2 天前那样打印日期,因为我已经完成了我得到的日期就像:String date1 = "Thu Nov 13 19:01:25 GMT+05:30 2014";
打电话str=get_userTime(date1);
private String get_userTime(String usertime) {
Date d = null;
// String datee = "Thu Nov 13 19:01:25 GMT+05:30 2014";
String datee = usertime;
SimpleDateFormat inputFormat = new SimpleDateFormat(
"EE MMM dd HH:mm:ss zz yyy");
try {
d = inputFormat.parse(datee);
} catch (java.text.ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
SimpleDateFormat outputFormat1 = new SimpleDateFormat("MM/dd/yyyy");
System.out.println(outputFormat1.format(d));
op = outputFormat1.format(d);
op=formatToYesterdayOrToday(op);
return op;
}
Run Code Online (Sandbox Code Playgroud)
这是昨天/今天获得的另一个功能,我使用了这个链接
public …Run Code Online (Sandbox Code Playgroud) 在C#中使用ASP.NET MVC显示相对日期(例如:20分钟前)的最佳库是什么?
如何使用PHP获得倒计时?
我想展示类似3Days 4Hours的东西.我有一个来自MySQL表的日期字段,想要用今天的日期计算它.截至目前,我只有日期,而不是存储在数据库中的时间,但最终我会.所以在那个时候,我可能会表现为3Days 4小时10分钟43秒.
这是我尝试过但得到错误的答案:
$datetime1 = new DateTime($starton);//$starton - date stored in db
$datetime2 = new DateTime(date());
$interval = $datetime1->diff($datetime2);
echo $interval->format('%d days);
Run Code Online (Sandbox Code Playgroud)
如果这基于服务器时间或用户来自的区域工作,我感到困惑.请指导我.当我有时间字段时,我想我可能需要jQuery来显示秒数,所以分钟也是如此.
如何设置TotalHours为双精度格式,或者需要做些什么才能得到txtBoxMonatstotal结果93.3。这是我的代码:
private void calendar1_MonthChanged(object sender, EventArgs e)
{
DateTime start = new DateTime(calendar1.CurrentDate.Year, calendar1.CurrentDate.Month, 1);
DateTime stop = new DateTime(calendar1.CurrentDate.Year, calendar1.CurrentDate.Month, 1).AddMonths(1).AddDays(-1);
int numberOfWorkDays = GetNumberOfWorkingDays(start, stop);
double shouldWorkPerMonth = tag_durschnit * numberOfWorkDays;
double workedPerMonth = workingHours.Where(x => x.Key.Date.Year == start.Year && x.Key.Month == start.Month).Sum(x => x.Value.TotalHours);
double saldo = workedPerMonth - shouldWorkPerMonth;
txtBoxMonatstotal.Text = workedPerMonth.ToString();
txtBoxSollzeit.Text = shouldWorkPerMonth.ToString();
txtBoxSaldo.Text = saldo.ToString();
}
Run Code Online (Sandbox Code Playgroud)
谢谢您的帮助
嗨不确定这是否是正确的论坛,但有没有人知道将小数时间转换为小时和分钟的公式?
IE 1.4 = 1小时24分钟
感谢任何帮助,对不起,如果它是错误的论坛
任何人都知道如何格式化给定的时间跨度格式像Facebook吗?
即
30秒前,大约一个小时前,昨天晚上8:37等等......
谢谢!
.Net或任何Nuget包中是否有任何功能可以将时间用于描述过去多远的格式.
例如,给出一个日期说明过去的情况.
我在Perl中看到了类似的东西,我不想重新发明轮子
c# ×5
.net ×3
date ×3
datetime ×3
php ×2
android ×1
asp.net-mvc ×1
date-format ×1
decimal ×1
double ×1
format ×1
formatting ×1
javascript ×1
jodatime ×1
jquery ×1
mysql ×1
string ×1
time ×1
timespan ×1