7.3.2 时间和字符串之间的转换

本文介绍了如何使用DateTime类的Parse()和TryParse()方法将字符串转换为时间。Parse()方法直接返回转换后的时间,而TryParse()则通过out参数传递转换结果。文章提供了具体的代码示例。
  把一个时间(DateTime类型的变量)转换为字符串的方法比较简单,只要使用它的ToStrting()方法即可。下面的代码就是把一个时间转换为其对应的字符串。
int thisInt = 10;
string intString = thisInit.ToString();
  把一个字符串转换为一个时间的方法稍微复杂,可以使用DateTime类的静态方法:Parse()和TryParse()。Parse()方法可以将字符串转换为其相应的时间,并将转换后的时间作为方法的返回值。Parse()方法存在以下3种重载形式。
(1)DateTime DateTime.Parse(string s);
(2)DateTime DateTime.Parse(string s,IFormatProvider provider);
(3)DateTime DateTime.Parse(string s,DateTimeStyles styles)。
  其中,s参数指定被转换的字符串;provider参数提供与s参数相关的区域性特定格式设置信息;styles参数指定s参数允许使用的格式。
  在下面的代码中,ConvertToDateByParse(string value)静态方法调用Parse()方法把一个字符串转换为一个时间。如果转换操作失败,则返回一个初始值(1900-1-1 00:00:00),否则返回其相对应的时间。另外,该方法使用try…catch语句来检查字符串能否被转换为时间。
/// <summary>
/// 把字符串转换为时间
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public static DateTime ConvertToDateByParse(string value)
{
DateTime initValue = new DateTime(1900,1,1,0,0,0);
///如果字符串为空,则返回'1900-1-1 00:00:00'
if(string.IsNullOrEmpty(value) == true) return initValue;
///使用Parse方法转换
try{initValue = DateTime.Parse(value);}
catch{}
return initValue;
}
  TryParse()方法也可以将字符串转换为其相应的时间。但是,它使用out类型的参数保存转换后的时间。  TryParse()方法存在以下2种重载形式。
(1)bool DateTime.TryParse(string s,out int result);
(2)bool DateTime.TryParse(string s, IFormatProvider provider,DateTimeStyles styles, out DateTime result)。
  其中,s参数指定被转换的字符串;result参数用来保存转换后的时间;provider参数提供与s参数相关的区域性特定格式设置信息;styles参数指定s参数允许使用的格式。
在下面的代码中,ConvertToDateByTryParse(string value)静态方法调用TryParse()方法把一个字符串转换为一个时间。如果转换操作失败,则返回一个初始值(1900-1-1 00:00:00),否则返回其相对应的时间。
/// <summary>
/// 把字符串转换为时间
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public static DateTime ConvertToDateByTryParse(string value)
{
DateTime initValue = new DateTime(1900,1,1,0,0,0);
///如果字符串为空,则返回'1900-1-1 00:00:00'
if(string.IsNullOrEmpty(value) == true) return initValue;
///使用TryParse方法转换
DateTime.TryParse(value,out initValue);
return initValue;
}
 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值