加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 将Null追加到`StringBuilder`

发布时间:2020-12-15 23:49:42 所属栏目:百科 来源:网络整理
导读:我正在读取 XML文件并使用StringBuilder构建字符串.但有时我的Element.Attributes缺失,在这种情况下字符串为null. string key = (string)EventId.Descendants("properties").Elements("ID").Attributes("key").FirstorDefault(); 获得所有attribue值后,我正
我正在读取 XML文件并使用StringBuilder构建字符串.但有时我的Element.Attributes缺失,在这种情况下字符串为null.

string key  = (string)EventId.Descendants("properties").Elements("ID").Attributes("key").FirstorDefault();

获得所有attribue值后,我正在进行字符串构建:

sb.Append(key.PadRight(33));

但有时key的值可以为null,其中它给出了一个错误:

Check to determine if the object is null before calling the method

我想将空字符串附加到StringBuilder,即使该值为null.

解决方法

你可以简单地写

sb.Append((key ?? "").PadRight(33));

?? ??被称为Null-Coalescing operator

它的工作在于评估左侧值,如果该值为null,则返回右侧值.或者换句话说,它是一个捷径

sb.Append((key == null ? "" : key).PadRight(33));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读