Je cherche à vider mes lignes vides d'un tableau. [Résolu]

Signaler
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009
-
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
-
Bonjour,

//noms est une texte box multilignes
//j'ai une fonction de ce type
for(
int i=0;i<noms.Lines.GetLength(0);i++)
{
...noms.Lines[i]...

}

puis quand il boucle dessus et que dans ma text.box j'ai mis des retour chariot vide, il me dit que je suis en dehors des limite du tableau...
Une idée ?

[mailto:gomoz@free.fr Gomoz]
A voir également:

13 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
84
Salut,


int dd = noms.Lines.GetLength(0);
ArrayList lines = new ArrayList();
string currentLine;

for(int i=0;i<dd;i++)
{
currentLine = noms.Lines[i];

// si la ligne n'est pas "vide", on la garde
if ( currentLine != string.Empty )
lines.Add(currentLine);
}

// affectation du nouveau tableau de lignes
noms.Lines = (string[])lines.ToArray(typeof(string));

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
30 octobre 2010

essaie de faire ca
int dd = noms.Lines.GetLength(0);

for(int i=0;i<dd;i++)
{
...noms.Lines[i]...

YaoYao !!
1 + 1 = 10
Messages postés
108
Date d'inscription
vendredi 11 juillet 2003
Statut
Membre
Dernière intervention
27 novembre 2007

Normalement, le code mentionné doit fonctionner. A l'endroit où tu écris des pointillés, ne modifierais-tu pas la valeur de i ???

-- AOGie --
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
30 octobre 2010

nan, quand il ajoute des chariots, il modifie le noms.Lines.GetLength(0);, c pkoi je lui ai conseillé de fixer la valeur maximum de la boucle avant

YaoYao !!
1 + 1 = 10
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009

j'ais essayé la solution de Fildomen mais ca marche toujours pas...

Une exception non gérée du type 'System.IndexOutOfRangeException' s'est produite dans HttpRequest.exe
Informations supplémentaires : L'index se trouve en dehors des limites du tableau.

Sinon je ne modifie pas les lignes, je les consultes juste :(

[mailto:gomoz@free.fr Gomoz]
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009

en fait je cherche juste une fonction comme .trim() qui m'elèverais les retours chariots vides

[mailto:gomoz@free.fr Gomoz]
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
30 octobre 2010

ben la fonction que tu cherche est bien trim, mais ajoute les charactère a enlever , comme trim('\n');

YaoYao !!
1 + 1 = 10
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009

oui mais il faut supprimer le retour chariot que si la ligne est vide. Car si je vire toutes les lignes ca sert stritement à rien de faire "for(int i=0;i<noms.Lines.GetLength(0);i++)" après ... ;)

[mailto:gomoz@free.fr Gomoz]
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
61
Hello,

Je vois une erreur dans ton code. Si tu veux boucler sur les lignes de ton tableau :

for(int i=0;i<noms.Lines.Count;i++)...

La méthode GetLength(i) te donne le nombre de charactères à la ligne i.

Amicalement, SharpMao
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
84
non, Lines est un tableau de string, donc un type Array :-)

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
61
Oups,

Tu as raison coq, je me suis embrouillé.

Amicalement, SharpMao
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009

merci beaucoup, ca marche nikel ;)

[mailto:gomoz@free.fr Gomoz]
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
84
SharpMao : le matin à 7h40 ça peut se comprendre ;-)

Cocoricoooooooo !!!!
coq
MVP Visual C#