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

Messages postés
135
Date d'inscription
mardi 22 avril 2003
Dernière intervention
23 décembre 2009
- - Dernière réponse : cs_coq
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
- 1 juil. 2005 à 19:22
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]
Afficher la suite 

Votre réponse

13 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
89
3
Merci
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#

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 117 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_coq
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
essaie de faire ca
int dd = noms.Lines.GetLength(0);

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

YaoYao !!
1 + 1 = 10
Commenter la réponse de Fildomen
Messages postés
108
Date d'inscription
vendredi 11 juillet 2003
Dernière intervention
27 novembre 2007
0
Merci
Normalement, le code mentionné doit fonctionner. A l'endroit où tu écris des pointillés, ne modifierais-tu pas la valeur de i ???

-- AOGie --
Commenter la réponse de aogie
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
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
Commenter la réponse de Fildomen
Messages postés
135
Date d'inscription
mardi 22 avril 2003
Dernière intervention
23 décembre 2009
0
Merci
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]
Commenter la réponse de cs_gomoz
Messages postés
135
Date d'inscription
mardi 22 avril 2003
Dernière intervention
23 décembre 2009
0
Merci
en fait je cherche juste une fonction comme .trim() qui m'elèverais les retours chariots vides

[mailto:gomoz@free.fr Gomoz]
Commenter la réponse de cs_gomoz
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
ben la fonction que tu cherche est bien trim, mais ajoute les charactère a enlever , comme trim('\n');

YaoYao !!
1 + 1 = 10
Commenter la réponse de Fildomen
Messages postés
135
Date d'inscription
mardi 22 avril 2003
Dernière intervention
23 décembre 2009
0
Merci
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]
Commenter la réponse de cs_gomoz
Messages postés
1025
Date d'inscription
mardi 4 février 2003
Dernière intervention
7 juin 2010
66
0
Merci
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
Commenter la réponse de SharpMao
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
89
0
Merci
non, Lines est un tableau de string, donc un type Array :-)

Cocoricoooooooo !!!!
coq
MVP Visual C#
Commenter la réponse de cs_coq
Messages postés
1025
Date d'inscription
mardi 4 février 2003
Dernière intervention
7 juin 2010
66
0
Merci
Oups,

Tu as raison coq, je me suis embrouillé.

Amicalement, SharpMao
Commenter la réponse de SharpMao
Messages postés
135
Date d'inscription
mardi 22 avril 2003
Dernière intervention
23 décembre 2009
0
Merci
merci beaucoup, ca marche nikel ;)

[mailto:gomoz@free.fr Gomoz]
Commenter la réponse de cs_gomoz
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
89
0
Merci
SharpMao : le matin à 7h40 ça peut se comprendre ;-)

Cocoricoooooooo !!!!
coq
MVP Visual C#
Commenter la réponse de cs_coq

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.