/*十有三博客*/
  • 首页
  • 关于本站
  • 网站地图
  • RSS订阅

C# string转换成DateTime?(字符串转换成可空日期类型)

2013-10-28 十有三 1 浏览:1万+ .NET技术 C#

PS:此文主要讲述的是可空日期类型和字符串之间的转换,正常类型转换看这篇文章:字符串string类型转换成DateTime类型


最近项目中遇到以前一直困扰的问题,就是如何将string转换成DateTime?这种可空日期类型。以前总是通过编写一堆逻辑代码来进行转换,但是写这些代码感觉非常繁琐。后在网上浏览相关资料,使用NullableConverter类就可以轻松的进行转换。

以下是测试的部分代码,代码在控制台应用程序中运行:

/* 测试string类型转换成DateTime?类型*/ 
/*NullableConverter类构造函数必须传入要转换的类型*/

System.ComponentModel.NullableConverter nullableDateTime = new System.ComponentModel.NullableConverter(typeof(DateTime?));

/*
*正常日期格式字符串转换为DateTime?
*/
string strDate = DateTime.Now.ToString();
DateTime? dt1=(DateTime?)nullableDateTime.ConvertFromString(strDate);
Console.WriteLine("正常日期格式字符串转换成DateTime?:{0}", dt1);

/*
*字符串为空白转换为DateTime?
*/
strDate = string.Empty;
DateTime? dt2 = (DateTime?)nullableDateTime.ConvertFromString(strDate);
Console.WriteLine("空白字符串转换成DateTime?:{0}", dt2);

/*
*字符串为NULL转换为DateTime?
*/
strDate = null;
DateTime? dt3 = (DateTime?)nullableDateTime.ConvertFromString(strDate);
Console.WriteLine("NULL字符串转换成DateTime?:{0}", dt3); 
Console.Read();

输出的结果是:字符串转换可控日期类型结果图

总结果上看可以顺利将空字符串和正常的字符串转换成DateTime?类型,但是如果传入非法的日期格式的字符串会报错,需要另外处理。

NullableConverter类主要提供可空类型与其基础基元类型间的自动转换。关于NullableConverter类的具体说明,可在网络上找到大量的资料,这里就不再叙述。这里是MSDN的描述:http://msdn.microsoft.com/zh-cn/library/system.componentmodel.nullableconverter(v=vs.85).aspx


作者:十有三

出处:https://shiyousan.com/post/ca4a6413-ecb4-4237-baf6-e88e616d18fc

版权声明:本文采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。欢迎转载本文,转载请声明出处或保留此段声明。


  • 上一篇: 解决系统启动出现 Loading Operating System Boot From CD/DVD 导致无法开机问题
  • 下一篇: 网站使用plesk面板,页面出现default parallesls plesk page的解决方法

相关文章
  • ASP.NET MVC AJAX.BeginForm异步提交和刷新无效
  • C#将时间转化为ISO8601规范的UTC格式-百度原创星火计划published_time格式转换
  • HttpException (0x80004005): 无法连接到 SQL Server 会话数据库。
  • (译)在 ASP.NET中使用 XML-RPC 进行ping
  • C#中ADO.NET如何传递和设置like查询的参数
  • ASP.NET如何动态抛出指定状态代码的HTTP错误

文章分类

.NET技术 123 数据库 24 Web前端 21 网站建设运维 37 操作系统与应用 66 程序猿日常 11 开发工具 12 其他随笔 13

文章标签

ASP.NET ASP.NET MVC C# CSS HTML IIS Javascript Linux MongoDB MySql SQL SQL Server Visual Studio Windows系统 版本控制系统 插件工具 服务器 搞笑娱乐 好文分享 软件应用 生活知识 手机问题 随笔 网络知识 网站设计优化 网站维护 养生保健 异常处理 硬件设备 游戏攻略

热门文章

  • IIS8如何安装和使用URL重写工具-URL Rewrite
  • 林蛋大与楚中天,朱肚皮与朱月坡
  • 解决IE11安装升级失败和在安装前需要更新的问题
  • Windows Server 2012无法安装 .NET3.5-安装角色或功能失败,找不到源文件
  • VS重构重命名的快捷键

推荐文章

  • .NET 解决XML反序列化出现 XML文档(0, 0)中有错误 缺少根元素。
  • ChinaPay踩坑笔记二:发布后依然无法支付订单提示错误代码80040154没有注册类
  • 服务维护笔记:Windows Server 2012 R2 KB3000850补丁更新失败
  • 分享一个MIME Types大全网址
  • 解决"此请求已被阻止,因为当用在 GET 请求中时,会将敏感信息透漏给第三方网站"的问题

友情链接

  • Passingwind的博客
  • 码友网

知识共享许可协议 CC BY-SA 4.0本站作品采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。
闽ICP备15003702号
闽公网安备 35020302035102号