Il problema, secondo me, è la maniera in cui il contenuto della variabile Impressioni viene scritta sul file, al momento del suo inserimento.
In pratica se il testo in essa immagazzinato contiene dei ritorni a capo, è ovvio che in fase di lettura questo possa provocare dei problemi, in quanto tutto ciò rende imprevedibile il numero di righe da leggere perchè la variabile abbia il contenuto corretto.

Per ovviare al problema, sempre che l'inghippo risieda in questo, potresti prevedere una sostituzione dei caratteri di ritorno a capo, con un altro carattere (ad esempio il pipe |), che renderà possibile scrivere il testo su un'unica riga, ma conservando i "segnaposto" per i ritorni a capo.

Al momento del caricamento della variabile, poco prima di visualizzare il testo nella TextBox, potrai provvedere alla sostituzione dei segnaposto con i caratteri di ritorno a capo.

Boolean