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

Paramètres

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.

S’applique à

Voir aussi