/*十有三博客*/
  • 首页
  • 关于本站
  • 网站地图
  • 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的解决方法

相关文章
  • IIS8通过ARR和URL重写模块实现不同站点之间的POST请求重写
  • C#如何根据输入的行数打印出由*星号组成的三角形
  • ASP.NET MVC AJAX调用没有反应和返回结果
  • ASP.NET MVC 5 学习笔记:使用HandleErrorAttribute处理异常
  • 从 datetime2 数据类型到 datetime 数据类型的转换产生一个超出范围的值
  • 翻译:Changes to the language setting will not take effect until the environment is restarted.

文章分类

.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重构重命名的快捷键

推荐文章

  • hostease的windows虚拟机机如何添加MIME类型?
  • Win10 自动换壁纸软件失效-无法换壁纸并被强制切换为默认壁纸
  • 记录下最近onenote的无法同步问题(错误0xA0000014和0xE4010641)
  • 思考ASP.NET网站静态化的利与弊
  • 解决Windows 10没有“改用本地帐户登录”选项的问题

友情链接

  • Passingwind的博客
  • 码友网

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