Originariamente inviato da tulkas85
il return è sempre null....
Beh, innanzitutto come vorresti fare concettualmente così perdi i "newline". E concatenare con l'operatore + ogni volta è molto inefficiente, man mano che la stringa si ingrossa.

E comunque il ciclo è concettualmente sbagliato. Ammesso che la prima riga non sia null, entri nel ciclo. Ma quando esci??? Quando linea diventa null .... ma se non era null all'inizio non lo diventa mai perché concateni con + e se readLine() ritorna null tu concateni la stringa "null".