Salve a tutti,
è da un po che non sto usando il c#, e ora che ho riniziato sono un pochetto arrugginito.. In pratica devo prima leggere un file di testo e trovare il numero di righe presenti, e poi, creando un valore random, scegliere casualmente una delle righe del documento e scriverla su una textbox.
Ho riscontrato due problemi: quando leggo il numero di righe mi rida numeri sballati, e poi la frase che compare sulla textbox è sempre la prima del file.
per leggere il numero di righe ho usato tre modi diversi, ma i risultati sono sempre gli stessi.
1 modo:
2 modo:codice:string frase; int counter = 0; while (sr.Peek() != -1) { frase = sr.ReadLine(); counter++; }
3 modo:codice:string counter = (new StreamReader(filePath)).ReadToEnd().Split('\n').Length;
e poi qui c'è la riscrittura della riga prescelta:codice:string frase=""; int counter = 0; while (frase!=null) { frase = sr.ReadLine(); counter++; }
codice:using (StreamReader line = new StreamReader(@"c:/users/" + FuserName + "/desktop/domande.txt")) { int lunghezza; Random casuale = new Random(); int numerocasuale = casuale.Next(1, lunghezza); string domanda = ""; for (int i = 0; i < 3; i++) { domanda = ""; domanda = line.ReadLine(); } textBox3.Text = domanda; }

Rispondi quotando