Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

String.IsNullOrEmpty(String) Method

Definition

Namespace:
System
Assemblies:
mscorlib.dll, System.Runtime.dll
Assemblies:
netstandard.dll, System.Runtime.dll
Assembly:
System.Runtime.dll
Assembly:
mscorlib.dll
Assembly:
netstandard.dll
Source:
String.cs
Source:
String.cs
Source:
String.cs
Source:
String.cs
Source:
String.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Indicates whether the specified string is null or an empty string ("").

public:
 static bool IsNullOrEmpty(System::String ^ value);
public static bool IsNullOrEmpty(string value);
public static bool IsNullOrEmpty(string? value);
static member IsNullOrEmpty : string -> bool
Public Shared Function IsNullOrEmpty (value As String) As Boolean

Parameters

value
String

The string to test.

Returns

true if the value parameter is null or an empty string (""); otherwise, false.

Examples

The following example examines three strings and determines whether each string has a value, is an empty string, or is null.

string s1 = "abcd";
string s2 = "";
string s3 = null;

Console.WriteLine("String s1 {0}.", Test(s1));
Console.WriteLine("String s2 {0}.", Test(s2));
Console.WriteLine("String s3 {0}.", Test(s3));

String Test(string s)
{
if (String.IsNullOrEmpty(s))
 return "is null or empty";
else
 return String.Format("(\"{0}\") is neither null nor empty", s);
}

// The example displays the following output:
// String s1 ("abcd") is neither null nor empty.
// String s2 is null or empty.
// String s3 is null or empty.
Class Sample
 Public Shared Sub Main()
 Dim s1 As String = "abcd"
 Dim s2 As String = ""
 Dim s3 As String = Nothing
 
 Console.WriteLine("String s1 {0}.", Test(s1))
 Console.WriteLine("String s2 {0}.", Test(s2))
 Console.WriteLine("String s3 {0}.", Test(s3))
 End Sub
 
 Public Shared Function Test(s As String) As String
 If String.IsNullOrEmpty(s) Then
 Return "is null or empty"
 Else
 Return String.Format("(""{0}"") is neither null nor empty", s)
 End If
 End Function 
End Class 
' The example displays the following output:
' String s1 ("abcd") is neither null nor empty.
' String s2 is null or empty.
' String s3 is null or empty.
let test (s: string): string =
 if String.IsNullOrEmpty(s)
 then "is null or empty"
 else $"(\"{s}\") is neither null nor empty"

let s1 = "abcd"
let s2 = ""
let s3 = null

printfn "String s1 %s" (test s1)
printfn "String s2 %s" (test s2)
printfn "String s2 %s" (test s3)

// The example displays the following output:
// String s1 ("abcd") is neither null nor empty.
// String s2 is null or empty.
// String s3 is null or empty.

Remarks

IsNullOrEmpty is a convenience method that enables you to simultaneously test whether a String is null or its value is String.Empty. It is equivalent to the following code:

bool TestForNullOrEmpty(string s)
{
 bool result;
 result = s == null || s == string.Empty;
 return result;
}

string s1 = null;
string s2 = "";
Console.WriteLine(TestForNullOrEmpty(s1));
Console.WriteLine(TestForNullOrEmpty(s2));

// The example displays the following output:
// True
// True
result = s Is Nothing OrElse s = String.Empty
let testForNullOrEmpty (s: string): bool =
 s = null || s = String.Empty

let s1 = null
let s2 = ""

printfn "%b" (testForNullOrEmpty s1)
printfn "%b" (testForNullOrEmpty s2)

// The example displays the following output:
// true
// true

You can use the IsNullOrWhiteSpace method to test whether a string is null, its value is String.Empty, or it consists only of white-space characters.

What is a null string?

A string is null if it has not been assigned a value (in C++ and Visual Basic) or if it has explicitly been assigned a value of null. Although the composite formatting feature can gracefully handle a null string, as the following example shows, attempting to call one if its members throws a NullReferenceException.

 String s = null;

 Console.WriteLine($"The value of the string is '{s}'");

 try 
 {
 Console.WriteLine($"String length is {s.Length}");
 }
 catch (NullReferenceException e) 
 {
 Console.WriteLine(e.Message);
 }

 // The example displays the following output:
 // The value of the string is ''
 // Object reference not set to an instance of an object.
Module Example
 Public Sub Main3()
 Dim s As String

 Console.WriteLine("The value of the string is '{0}'", s)

 Try
 Console.WriteLine("String length is {0}", s.Length)
 Catch e As NullReferenceException
 Console.WriteLine(e.Message)
 End Try
 End Sub
End Module
' The example displays the following output:
' The value of the string is ''
' Object reference not set to an instance of an object.
let (s: string) = null

printfn "The value of the string is '%s'" s

try
 printfn "String length is %d" s.Length
with
 | :? NullReferenceException as ex -> printfn "%s" ex.Message

// The example displays the following output:
// The value of the string is ''
// Object reference not set to an instance of an object.

What is an empty string?

A string is empty if it's explicitly assigned an empty string ("") or String.Empty. An empty string has a Length of 0. The following example creates an empty string and displays its value and its length.

String s = "";
Console.WriteLine($"The length of '{s}' is {s.Length}.");

// The example displays the following output:
// The length of '' is 0.
Dim s As String = ""
Console.WriteLine("The length of '{0}' is {1}.", s, s.Length)
' The example displays the following output:
' The length of '' is 0.
let s = ""
printfn "The length of '%s' is %d." s s.Length

// The example displays the following output:
// The length of '' is 0.

Applies to

See also


Feedback

Was this page helpful?