25/11/2025 - Hank Voight ha scritto:
mi trova una sola riga e neanche selezionata.
Che non sia selezionata, ovvero che non contenga "1", è impossibile.
Ne vedi una soltanto perché in realtà sovrascrivi in continuazione la proprietà Text invece di concatenarla. Diciamo che, per quanto ne so io, l'approccio corretto in questo caso sarebbe usare uno StringBuilder.
Private Sub SelezSettori_Click(sender As Object, e As EventArgs) Handles SelezSettori.Click
Dim righeTotali() As String = IO.File.ReadAllLines("C:/Pesca/Gare Lago 20/SettoriGara3.txt")
Dim sb as New StringBuilder()
For Each riga As String In righeTotali
If riga.Contains("1") Then
sb.AppendLine(riga)
End If
Next
RichTextBox1.Text = sb.ToString()
End Sub
Le stringhe concatenate in .NET mangiano memoria a pacchi e ci sono tutta una serie di classi per gestirle in modo efficiente. Se addirittura hai una stima di quello che potrebbe essere la lunghezza in caratteri del risultato minimo, potresti usare il costruttore che accetta la Capacity e rispamiare un pochetto di CPU a valle.