asp.net中timespan的用法
来源: 阅读:740 次 日期:2014-10-21 09:52:37
温馨提示: 小编为您整理了“asp.net中timespan的用法”,方便广大网友查阅!

asp.net 中,两个时间相减,得到一个 timespan 实例,timespan 有一些属性:days、totaldays、hours、totalhours、minutes、totalminutes、seconds、totalseconds、ticks,注意没有 totalticks。

一、timespan常量、字段

timespan.maxvalue; // 10675199.02:48:05.4775807

timespan.minvalue; //-10675199.02:48:05.4775808

timespan.zero; // 0.00:00:00.0

timespan.ticksperday; //一天的 tick 数: 864000000000

timespan.ticksperhour; //一小时的 tick 数: 36000000000

timespan.tickspermillisecond; //一毫秒的 tick 数: 10000

timespan.ticksperminute; //一分钟的 tick 数: 600000000

timespan.tickspersecond; //一秒钟的 tick 数: 10000000

二、timespan静态方法

timespan.compare(); //对比

timespan.equals(); //=

timespan.fromdays(); //从天数建立

timespan.fromhours(); //从小时数建立

timespan.frommilliseconds(); //从毫秒数建立

timespan.fromminutes(); //从分钟数建立

timespan.fromseconds(); //从秒数建立

timespan.fromticks(); //从 tick 数建立

timespan.parse(); //从字符串建立

timespan.parseexact(); //从指定格式的字符串建立

timespan.tryparse(); //尝试从字符串建立

timespan.tryparseexact(); //尝试从指定格式的字符串建立

三、timespan属性

days; //天部分 hours; //小时部分

milliseconds; //毫秒部分

minutes; //分部分

seconds; //秒部分

ticks; //tick 总数

totaldays; //总天数

totalhours; //总小时数

totalmilliseconds; //总毫秒数

totalminutes; //总分钟数

totalseconds; //总秒数

四、timespan方法

add(); // + compareto(); //比对

duration(); //绝对值

equals(); //

negate(); //取反, + > -、- > +

subtract(); // -, add()的反操纵

tostring(); //格式化到字符串, .net 4.0 较之前版本有变动

五、timespan构建对象

protected void button1_click(object sender, eventargs e)

...{

timespan t1 = new timespan(864000000000); //1.00:00:00

timespan t2 = new timespan(23, 59, 59); //23:59:59

timespan t3 = new timespan(30, 23, 59, 59); //30.23:59:59

timespan t4 = new timespan(30, 23, 59, 59, 999); //30.23:59:59.9990000

double f = 365.25;

timespan t5 = timespan.fromdays(f); //365.06:00:00

timespan t6 = timespan.fromhours(f * 24); //365.06:00:00

timespan t7 = timespan.fromminutes(f * 24 * 60); //365.06:00:00

timespan t8 = timespan.fromseconds(f * 24 * 60 * 60); //365.06:00:00

timespan t9 = timespan.frommilliseconds(f * 24 * 60 * 60 * 1000); //365.06:00:00

timespan t0 = timespan.fromticks((long)(f * 24 * 60 * 60 * 1000 * 10000)); //365.06:00:00

textbox1.text = string.format({0}n{1}n{2}n{3}n{4}n{5}n{6}n{7}n{8}n{9},

t1, t2, t3, t4, t5, t6, t7, t8, t9, t0

);

}

求离最近发表时间的函数

public string datestringfromnow(datetime dt)

{

timespan span = datetime.now - dt;

if (span.totaldays > 60)

{

return dt.toshortdatestring();

}

else if ( span.totaldays > 30 )

{

return 1个月前;

}

else if (span.totaldays > 14)

{

return 2周前;

}

else if (span.totaldays > 7)

{

return 1周前;

}

else if (span.totaldays > 1)

{

return string.format({0}天前, (int)math.floor(span.totaldays));

}

else if (span.totalhours > 1)

{

return string.format({0}小时前, (int)math.floor(span.totalhours));

}

else if (span.totalminutes > 1)

{

return string.format({0}分钟前, (int)math.floor(span.totalminutes));

}

else if (span.totalseconds >= 1)

{

return string.format({0}秒前, (int)math.floor(span.totalseconds));

}

else

{

return 1秒前;

}

}

datetime和timespan中的常用成员及其说明

属性说明

date获取此实例的日期部分。

day获取此实例所表示的日期为该月中的第几天。

dayofweek获取此实例所表示的日期是星期几。

dayofyear获取此实例所表示的日期是该年中的第几天。

hour获取此实例所表示日期的小时部分。

millisecond获取此实例所表示日期的毫秒部分。

minute获取此实例所表示日期的分钟部分。

month获取此实例所表示日期的月份部分。

now创建一个datetime实例,它是此计算机上的当前本地日期和时间。

second获取此实例所表示日期的秒部分。

timeofday获取此实例的当天的时间。

today获取当前日期。

year获取此实例所表示日期的年份部分。

表01:datetime类的常用属性及其说明

方法说明

add将指定的timespan的值加到此实例的值上。

adddays将指定的天数加到此实例的值上。

addhours将指定的小时数加到此实例的值上。

addmilliseconds将指定的毫秒数加到此实例的值上。

addminutes将指定的分钟数加到此实例的值上。

addmonths将指定的月份数加到此实例的值上。

addseconds将指定的秒数加到此实例的值上。

addyears将指定的年份数加到此实例的值上。

daysinmonth返回指定年份中指定月份的天数。

isleapyear返回指定的年份是否为闰年的指示。

parse将日期和时间的指定字符串表示转换成其等效的datetime实例。

subtract从此实例中减去指定的时间或持续时间。

tolongdatestring将此实例的值转换为其等效的长日期字符串表示形式。

tolongtimestring将此实例的值转换为其等效的长时间字符串表示形式。

toshorttimestring将此实例的值转换为其等效的短时间字符串表示形式。

toshortdatestring将此实例的值转换为其等效的短日期字符串表示形式。

表02:datetime结构的常用方法及其说明

表03和表04分别是timespan结构的常用属性和常用方法及其说明:

属性说明

days获取由此实例表示的整天数。

hours获取由此实例表示的整小时数。

milliseconds获取由此实例表示的整毫秒数。

minutes获取由此实例表示的整分钟数。

seconds获取由此实例表示的整秒数。

ticks获取用刻度表示的此实例的值。

totaldays获取以整天数和天的小数部分表示的此实例的值。

totalhours获取以整小时数和小时的小数部分表示的此实例的值。

totalmilliseconds获取以整毫秒数和毫秒的小数部分表示的此实例的值。

totalminutes获取以整分钟数和分钟的小数部分表示的此实例的值。

totalseconds获取以整秒数和秒的小数部分表示的此实例的值。

表03:timespan结构的常用属性及其说明

方法说明

add将指定的timespan添加到此实例中。

duration返回其值为此实例的绝对值的timespan。

fromdays返回表示指定天数的timespan,其中对天数的指定精确到最接近的毫秒。

fromhours返回表示指定小时数的timespan,其中对小时数的指定精确到最接近的毫秒。

frommilliseconds返回表示指定毫秒数的timespan。

fromminutes返回表示指定分钟数的timespan,其中对分钟数的指定精确到最接近的毫秒。

fromseconds返回表示指定秒数的timespan,其中对秒数的指定精确到最接近的毫秒。

subtract从此实例中减去指定的timespan。

表04:timespan结构的常用方法及其说明

更多信息请查看IT技术专栏

更多信息请查看网络编程
手机网站地址:asp.net中timespan的用法
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map