web-dev-qa-db-fra.com

Comment vérifier si un StringBuilder est vide?

Je dois tester un peu une méthode qui prend une StringBuilder, deux éléments et remplir la StringBuilder avec les écarts trouvés entre les deux éléments.

Lors de mon premier test, je lui donne deux éléments identiques. Je souhaite donc vérifier si la variable StringBuilder est vide.

Il n'y a pas de méthode ni de propriété IsEmpty.

Comment vérifier facilement cela?

18
Darth Boiethios

Si vous regardez la documentation de StringBuilder il n’a que 4 propriétés. L'un d'eux est Length.

La longueur d'un objet StringBuilder est définie par son nombre d'objets Char.

Vous pouvez utiliser la propriété Length property:

Obtient ou définit la longueur de l'objet StringBuilder actuel.

StringBuilder sb = new StringBuilder();

if (sb.Length != 0)
{
    // you have found some difference
}

Une autre possibilité serait de le traiter comme une chaîne en utilisant la méthode String.IsNullOrEmpty et de condenser le générateur en une chaîne utilisant la méthode ToString. Vous pouvez même récupérer la chaîne résultante et l'assigner à une variable que vous utiliseriez si vous aviez trouvé des différences:

string difference = ""; 

if (!String.IsNullOrEmpty(difference = sb.ToString()))
{
    Console.WriteLine(difference);      
}
30
Mong Zhu

utilisez la propriété StringBuilder.Length, ici le doc

if (mySB.Length > 0)
{
     Console.WriteLine("Bang! is not empty!"); 
}

Utilisez ceci, cela fonctionnera:

StringBuilder stringbuilder = new StringBuilder();
if(string.isnullorempty(Convert.toString(stringbuilder)))
0
Ajith Kumar