Lire et modifier en temps réel un richtextbox via .txt
Bonsoir tout le monde!!
J'ai un petit voir gros problème! Je ne comprend pas du tout de quoi cela peut venir :?
Tout d'abord je travail sur VS2008 en WinForm, le but de mon programme est une sorte de BDD .txt qui permettra de répertorier les utilisateurs, pourvoir gérer les MAJ ...
Mais bon c'est mal partit lol
Tout d'abord pour afficher le contenu du .txt dans le richtextbox en temps réel j'utilise :
Code:
1 2 3 4 5 6
|
while (boucleaffich == true)
{
this.Invoke(new affichageRich(affichageRichtext), File.ReadAllText("afficher.txt"));
Thread.Sleep(1000);
} |
Il est censé être vide donc pour écrire je passe par les méthodes suivantes :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
private bool lireFichierTexte()
{
sl = new StreamReader("afficher.txt");
bool chemin = false;
ligne = sl.ReadLine();
reecrire = string.Empty;
while (ligne != string.Empty)
{
this.Invoke(new ecriturerichbox(ecriturerichboxtext),"Contenu : " + ligne);
if (ligne.IndexOf(content + " &") > -1) //si content exist dans ligne
{
string[] cherch = ligne.Split('&');
if (cherch[1] != string.Empty)
{
int conectClient = int.Parse(cherch[1]);
conectClient++;
string intenString = Convert.ToString(conectClient);
ligne = ligne.Replace(cherch[1], intenString);
chemin = true;
}
cherch[1] = string.Empty;
}
if (ligne != string.Empty)
{
this.Invoke(new ecriturerichbox(ecriturerichboxtext), "Contenu 1: " + ligne);
reecrire = string.Concat(reecrire, ligne);
reecrire = string.Concat(reecrire, "\n");
ligne = sl.ReadLine();
}
}
sl.Close();
if (reecrire != string.Empty)
{
RecrireFichierTexte(reecrire);
}
return chemin;
} |
Normalement cette méthode devrait juste ouvrir le fichier puis le fermer, hors je rentre dedans lol, alors que .TXT est totalement vide!!
Code:
1 2 3 4 5 6 7 8 9 10
|
public void RecrireFichierTexte(string modifier)
{
if (modifier != "")
{
sf = new StreamWriter("afficher.txt", false);
sf.WriteLine(modifier);
sf.Close();
}
} |
Et ici ma ligne que j'écris apparaît à la seconde ligne :(, ce qui bloque le déroulement des étapes suivantes.
Help me please, j'ai beau tout retourné je suis coincé :cry:
Merci d'avance!