Lettura di un file di testo

Ruby:
Lettura di un file di testo

How to:

Per leggere un file di testo in Ruby, possiamo usare vari metodi. Qui sotto due esempi:

# Lettura completa del file
contenuto = File.read('esempio.txt')
puts contenuto

# Lettura linea per linea
File.foreach('esempio.txt') do |linea|
  puts linea
end

Se esempio.txt contiene:

Ciao, mondo!
Benvenuti nel file di esempio.

L’output sarà:

Ciao, mondo!
Benvenuti nel file di esempio.

Ciao, mondo!
Benvenuti nel file di esempio.

Deep Dive

La lettura di file in Ruby è supportata da una serie di metodi introdotti con le prime versioni del linguaggio. Inizialmente, l’accesso ai file era semplice, ma si è evoluto per offrire una maggiore flessibilità e controllo errori.

Alternative:

  • IO.readlines per ottenere un array delle righe del file.
  • File.open con un blocco per manipolare il file e chiuderlo automaticamente.

Dettagli implementativi:

  • File.read carica l’intero contenuto del file in memoria potrebbe non essere ideale per file grandi.
  • File.foreach legge una linea alla volta, riducendo l’utilizzo della memoria.

Si noti che la lettura di file potrebbe generare eccezioni, come Errno::ENOENT quando il file non esiste, quindi è consigliabile gestirle con un blocco begin-rescue.

See Also

Per approfondire, ecco alcune risorse utili (in inglese):