135 votes

Comment vérifier si une variable de type chaîne est vide ou nulle en C# ?

Comment puis-je vérifier si une variable C# est une chaîne vide ? "" ou nul ?

Je cherche le moyen le plus simple d'effectuer cette vérification. J'ai une variable qui peut être égale à "" ou null. Existe-t-il une fonction unique qui puisse vérifier si ce n'est pas "" ou nul ?

0 votes

Je pense spécifiquement que vous n'avez pas expliqué cela en profondeur. Vous avez dit to "" or null alors not "" or null ce qui m'a déstabilisé.

282voto

Forlan07 Points 3829
if (string.IsNullOrEmpty(myString)) {
   //
}

2 votes

Quand j'utilise IsEmpty il est dit : 'string' does not contain a definition for IsEmpty puis-je utiliser IsEmpty en msdn ou dois-je utiliser IsNullOrEmpty ?

3 votes

Très simple et très utile. J'aimerais que PHP puisse avoir quelque chose comme ça

6 votes

@Lion Liu : En fait, je pense que PHP a exactement autant à offrir. Voir : php.net/manual/fr/function.empty.php

61voto

madd0 Points 4836

Depuis .NET 2.0, vous pouvez utiliser :

// Indicates whether the specified string is null or an Empty string.
string.IsNullOrEmpty(string value);

En outre, depuis .NET 4.0, une nouvelle méthode va un peu plus loin :

// Indicates whether a specified string is null, empty, or consists only of white-space characters.
string.IsNullOrWhiteSpace(string value);

13voto

jk. Points 8019

Si la variable est une chaîne de caractères

bool result = string.IsNullOrEmpty(variableToTest);

si vous avez seulement un objet qui peut ou non contenir une chaîne de caractères, alors

bool result = string.IsNullOrEmpty(variableToTest as string);

1 votes

J'ai eu le même problème et le deuxième ne fonctionne pas correctement. Essayez ceci : objet x=3 ; bool result = string.IsNullOrEmpty(x as string) ; 'x as string' sera null donc le résultat est vrai même si x a une valeur autre que null ou une chaîne vide. Je n'ai pas trouvé de solution courte, j'ai utilisé une double vérification.

1 votes

@MártonMolnár il faudrait qu'il contienne une chaîne de caractères 3 n'est pas une chaîne de caractères donc c'est attendu essayez d'utiliser "3" à la place.

3voto

Asker Points 434
if (string.IsNullOrEmpty(myString)) 
{
  . . .
  . . .
}

2voto

cristobalito Points 2683

string.IsNullOrEmpty est ce que vous voulez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X