如何解决如何用默认日期替换字符串?
| 我有这个代码。 string ED= collection[\"ED\"].Replace(string.Empty,\"1/1/2011\").Split(\',\').ToString();
当我这样做时,我得到这个错误。
String cannot be of zero length.
Parameter name: oldValue
我在这里有点不对劲吗?
谢谢
解决方法
string.Replace
将第二个参数替换第一个参数的所有惯用用法。所以\"abcabcabc\".Replace(\"a\",\"z\")
变成\"zbczbczbc\"
。
替换空字符串的所有实例将导致替换的无限循环。 \"\".Replace(string.Empty,\"a\")
用\“ a \”替换空字符串,但是在a之前和之后仍然有一个空字符串,需要替换,因此我们有\“ aaa \”,但是仍然有一个空字符串字符串在字符串的开头和结尾以及a \之间,因此替换掉它们,我们得到\“ aaaaaaa \”等。
如果值是空的,您实际上是要使用默认日期吗?在这种情况下,您想要执行以下操作:
var temp = collection[\"ED\"];
if (string.IsNullOrEmpty(temp)) {
temp = \"1/1/2011\";
}
string ED = temp.Split(\',\').ToString();
,oldValue是Replace()
的第一个参数,因此我想您无法将string.Empty
传递给它
,Replace方法的第一个参数不能为空字符串。
请参阅本文的msdn例外部分。
如果不了解您要实现的目标,将很难再提供任何帮助。就目前而言,如果Replace方法成功执行,则Split方法会将字符串转换为数组,然后ToString方法将返回\“ System.String [] \”。我怀疑这是您要寻找的结果。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。