请教C#中对时间和字符串的处理(100分)

  • 主题发起人 千中元
  • 开始时间

千中元

Unregistered / Unconfirmed
GUEST, unregistred user!
如下代码显示出来的类似:
“您还有00:16:36.1845517 测试时间”
而我需要的是类似 “您还有16分钟 测试时间”。
代码如下:
Session["StartTime"] = DateTime.now;
TimeSpan MaxTime = new TimeSpan(0,0,1000);
if (DateTime.Now - (DateTime)Session["StartTime"] > MaxTime)
{
Label1.Text = "超时";
Button1.Enabled = false;
}
else
{
Label1.Text = "您还有"+(MaxTime -(DateTime.Now - (DateTime)Session ["StartTime"] )).ToString()+ " 测试时间";
}
问题1: C#中取得字符串的一部分的函数是?记得Delphi中是copy
问题2: 除了截取子字符串,是否还有更好的方法?
 
问题1: C#中取得字符串的一部分的函数是?记得Delphi中是copy
SubString(...)

问题2: 除了截取子字符串,是否还有更好的方法?
TimeSpan类有此属性 Hours Minutes Seconds三个属性
来得到TimeSpan对象的整数小时、分钟、秒的属性
 
问题1同上。
问题2:正确的回答是可以使用datetime.tostring("xxx")
xxx可以使各种的时间类型比如说yyyy/MM/dd等
 
为什么不这样做?
Session["StartTime"] = DateTime.now;
TimeSpan MaxTime = new TimeSpan(0,0,1000);
if (DateTime.Now - (DateTime)Session["StartTime"] > MaxTime)
{
Label1.Text = "超时";
Button1.Enabled = false;
}
else
{
TimeSpan tm=MaxTime -(DateTime.Now - (DateTime)Session["StartTime"]);
Label1.Text ="您还有 "+tm.Minutes.ToString()+":"+tm.Seconds.ToString() + " 分钟的测试时间";
}
 
我想知载取字符串的方法????
跟DELPHI的POS一样的东东??
 
应当可以使用字符串实例的IndexOf()及Substring()方法达到你的目的。
 
xljiong:
两个日期相减以后,是个时间段TimeSpan,不是时间DateTime,
所以就没法用datetime.tostring("xxx")
:)
 
chinaplate确实是这样子的对时间段好像只能这样子处理了
 
接受答案了.
 
千中元,你不是只学delphi,怎么学起C#来拉????
你不是说delphi里面有个女神在等着你呢么?鄙视[:(!]
 
顶部