.NET中是否有内置函数,它结合了String.IsNullOrEmpty和String.IsNullorWhiteSpace?
我可以轻松编写自己的,但我的问题是为什么没有String.IsNullOrEmptyOrWhiteSpace函数?
String.IsNullOrEmpty首先修剪字符串吗?也许更好的问题是,String.Empty是否有资格作为空格?
答案 0 :(得分:13)
为什么没有String.IsNullOrEmptyOrWhiteSpace
该功能称为string.IsNullOrWhiteSpace
:
指示指定的字符串是空,空还是仅包含空格字符。
这不应该是显而易见的吗?
答案 1 :(得分:0)
是的,String.IsNullOrWhiteSpace
方法。
它检查字符串是否为空,空或仅包含空格字符,因此它包含String.IsNullOrEmpty
方法的作用。
答案 2 :(得分:0)
String.IsNullOrWhiteSpace会检查null,Empty或WhiteSpace。
这些方法在进行测试之前会有效地修剪字符串,因此“”将返回true。
答案 3 :(得分:0)
这是使用dotPeek的反编译方法。
[TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
public static bool IsNullOrEmpty(string value)
{
if (value != null)
return value.Length == 0;
else
return true;
}
/// <summary>
/// Indicates whether a specified string is null, empty, or consists only of white-space characters.
/// </summary>
///
/// <returns>
/// true if the <paramref name="value"/> parameter is null or <see cref="F:System.String.Empty"/>, or if <paramref name="value"/> consists exclusively of white-space characters.
/// </returns>
/// <param name="value">The string to test.</param>
public static bool IsNullOrWhiteSpace(string value)
{
if (value == null)
return true;
for (int index = 0; index < value.Length; ++index)
{
if (!char.IsWhiteSpace(value[index]))
return false;
}
return true;
}