# String.IsNullOrEmpty(String) Méthode

## Définition

Indique si la chaîne spécifiée est `null` ou une chaîne vide ("").

``````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``

value
String

Chaîne à tester.

#### Retours

`true` si le paramètre `value` est `null` ou une chaîne vide ("") ; sinon, `false`.

## Exemples

L’exemple suivant examine trois chaînes et détermine si chaque chaîne a une valeur, est une chaîne vide ou si est `null`.

``````using namespace System;
String^ Test( String^ s )
{
if (String::IsNullOrEmpty(s))
return "is null or empty";
else
return String::Format( "(\"{0}\") is neither null nor empty", s );
}

int main()
{
String^ s1 = "abcd";
String^ s2 = "";
String^ s3 = nullptr;
Console::WriteLine( "String s1 {0}.", Test( s1 ) );
Console::WriteLine( "String s2 {0}.", Test( s2 ) );
Console::WriteLine( "String s3 {0}.", 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.
``````
``````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.
``````

## Remarques

IsNullOrEmpty est une méthode pratique qui vous permet de tester simultanément si un String est `null` ou si sa valeur est String.Empty. Il équivaut au code suivant :

``````result = s == nullptr || s == String::Empty;
``````
``````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
``````

Vous pouvez utiliser la IsNullOrWhiteSpace méthode pour tester si une chaîne est `null`, sa valeur est String.Empty, ou si elle se compose uniquement de caractères d’espace blanc.

### Qu’est-ce qu’une chaîne Null ?

Une chaîne est `null` si aucune valeur n’a été affectée (en C++ et Visual Basic) ou si une valeur de `null`. Bien que la fonctionnalité de mise en forme composite puisse gérer correctement une chaîne Null, comme le montre l’exemple suivant, essayez d’en appeler une si ses membres lèvent un NullReferenceException.

``````using namespace System;

void main()
{
String^ s;

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

try {
Console::WriteLine("String length is {0}", 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.
``````
``````  String s = null;

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

try
{
Console.WriteLine("String length is {0}", 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 Main()
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.
``````

### Qu’est-ce qu’une chaîne vide ?

Une chaîne est vide si une chaîne vide («  ») ou String.Empty. Une chaîne vide a une Length valeur de 0. L’exemple suivant crée une chaîne vide et affiche sa valeur et sa longueur.

``````String^ s = "";
Console::WriteLine("The length of '{0}' is {1}.", s, s->Length);
// The example displays the following output:
//       The length of '' is 0.
``````
``````String s = "";
Console.WriteLine("The length of '{0}' is {1}.", s, 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.
``````