Lecture de flux d'un *.txt caractère par caractère.

Résolu
tRibZ Messages postés 2 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 9 mars 2006 - 9 mars 2006 à 21:38
tRibZ Messages postés 2 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 9 mars 2006 - 9 mars 2006 à 23:21
Bonsoir à tous,

J'ai un fichier de type texte et je souhaite l'ouvrir grace à un flux mais en récupérant son contenu caractère par caractère, afin de remplir une grille avec dans chaque case un seul caractère.

Mon flux:
StreamReader sr = new StreamReader(nomFichier);

et je voudrais que this.grille[i][j].Text reçoive un caractère à la fois afin de remplir ma grille.

Mon fichier texte séquentiel ressemble à :

003200056
010900200
620700090
000090010
001805900
359000700
002080009
807400020
006002401

J'ai vu qu'il existait des méthodes comme sr.ReadChar() mais je n'arrive pas à les utiliser.

Pourriez-vous me donner un coup de pouc s'il vous plaît?

Merci.

1 réponse

tRibZ Messages postés 2 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 9 mars 2006
9 mars 2006 à 23:21
Bon aprés 2 bonnes heures de recherches intenses , j'ai trouvé , je laisse donc la solution pour les personnes que ça pourrait aider. La caste servant à empécher de remplir la grille avec le code ascii des chiffres.

for(int i = 0; i<9; i++)
{
for (int j=0; j<9; j++)
{

int temp = sr.Read();
char temp1 = (char)temp; // on caste la variable pour éviter l'ascii
if (temp1 != '0') // pour enlever les 0
grille[j][i].Text = temp1.ToString();
else
{
temp1 = ' ';
grille[j][i].Text = temp1.ToString();
}
}
sr.Read(); // On evite le retour chariot codé par 3 caractéres.
sr.Read();
sr.Read();

}

Voila je peux aller dormir tranquille.
3
Rejoignez-nous