本文摘自PHP中文网,作者黄舟,侵删。
说在前面
1 |
|
关于c#代码Convert.ToChar(null);出现异常,而object obj = null; Convert.ToChar(obj);//返回’\0’空字符问题详解。
为什么会想到说这个问题呢?
今天在博乐功能下点评一篇文章“关于System.Convert那些事”中提出了这个问题:
1 |
|
直接这样调用,执行时会产生异常;
而以下代码却不会出现异常!
1 2 |
|
异常分析
发生了 System.ArgumentNullException
查看详细信息,可以看到异常的具体信息,是在 System.Convert.ToChar(String value, IFormatProvider provider)发生了异常:
但通过调用堆栈,我们对错误能更清楚的认识;
如下图,在发生异常的方法之间还有一层调用:
System.Convert.ToChar(string value)
System.Convert.ToChar(string value),这才是问题的关键!
相关阅读 >>
C#之解决百度地图api app sn校验失败问题(代码实例)
C# tabcontral选项卡中加载显示窗体后 实现单向参数传递测试代码示例(图)
C#如何利用reportviewer来生成报表的示例代码分享(图)
更多相关阅读请进入《C#》频道 >>

C#高级编程(第11版) C# 7 & .NET Core 2.0(.NET开发经典名著)
作者:[美]克里斯琴·内格尔(Christian Nagel)著。出版时间:2019年3月。