Programe ListBox C sharp

Bonjours,

J'aurais besoin d'aide a propos du C#
Je dois faire un travail qui consiste a faire un programe form avec visual studios.
Le travail consiste a prendre nimporte quel gigantesque texte et le mettre dans une listbox.
Je doit faire attention car il a des mots dans le texte qui ne son pas des mot. Les critaires sont :
si le mot commence par un chiffre on le jette (il est pas bon)
et tout les mot doivents se répetter une fois dans la liste box de sorte a ce que si il a 3 fois le mot professeur. et bin qu'il apparaisse qu'une seule fois.

Voila mon problème.
je suis capable dallez chercher mon texte grace a une openfilebox.
ensuite je le met dans une variable string. c'est a ce moment que je bloque.
Je sais pas comment m'y prendre pour scanner tout les mots du texte pour ensuite les mettre dans un tableau ?
pour ensuite les scanner pour savoir si ce sont des mots ou pas ?

voici mon code :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.IO;
using System.Windows.Forms;

namespace ClasseurMots
{
public partial class Form1 : Form
{
public string texte;
string[] listeMots;

public Form1()
{
InitializeComponent();
txtCaractères.Text = "0";
txtMotsComptés.Text = "0";
txtMotsRépertoriés.Text = "0";
}

private void btnOuvrir_Click(object sender, EventArgs e)
{

int nbrMots = 0;
DialogResult reponse = ofdFichiertexte.ShowDialog(); // obtien la réponse du ofdFichierTexte
if (reponse == DialogResult.OK)
{ // si l'utilisateur a cliquer sur ok

Stream stream = ofdFichiertexte.OpenFile(); // Ouvre le fichier
StreamReader reader = new StreamReader(stream, Encoding.Default);
texte = reader.ReadToEnd(); // le texte recu va dans la variable texte.
reader.Close(); // ferme le reader
stream.Close(); // ferme le stream
}

texte = texte.Trim().ToLower();
nbrMots = lstTexte.Items.Count;
txtMotsComptés.Text = Convert.ToString(nbrMots);
lstTexte.Sorted = true;

}

private void btnQuitter_Click(object sender, EventArgs e)
{
Close();
}

}
}

Merci a vous

Ben

3 réponses

  • Votes
  • Date
  • Date décroissante
    1. J'ai oublier de spécifier que on n'avait pas le droit au split .
      1. En gros tu dois ré-implémenter split()?

        int i =0;
        for(i=0;i<monString.Length;i++)
        {
            String tmp="";
             if(monString[i] != ' ' || monString[i] != '\t')
              { 
                          tmp+=monString[i];
               }
               else
              {
                     //vérifier le premier caractère et insérer dans la listbox (en vérifiant l'unicité)
               }
               i++;
        }


        Quelque chose comme ça?