En aquest tema, aprendrem com gestionar fitxers en Ruby. La manipulació de fitxers és una habilitat essencial per a qualsevol programador, ja que permet llegir dades d'arxius externs, escriure resultats a fitxers i molt més. A continuació, desglossarem els conceptes clau i proporcionarem exemples pràctics per ajudar-te a comprendre com treballar amb fitxers en Ruby.
Conceptes Clau
- Obrir un Fitxer: Utilitzar el mètode
File.open
per obrir un fitxer. - Llegir un Fitxer: Utilitzar mètodes com
read
,readlines
ieach_line
per llegir el contingut d'un fitxer. - Escriure en un Fitxer: Utilitzar mètodes com
write
iputs
per escriure dades en un fitxer. - Tancar un Fitxer: Assegurar-se de tancar el fitxer després d'haver acabat de treballar amb ell.
- Modes d'Accés: Comprendre els diferents modes d'accés (
r
,w
,a
, etc.) per obrir fitxers.
Obrir un Fitxer
Per obrir un fitxer en Ruby, utilitzem el mètode File.open
. Aquest mètode accepta dos arguments: el nom del fitxer i el mode d'accés.
Modes d'Accés
Mode | Descripció |
---|---|
r |
Llegeix el fitxer. El fitxer ha d'existir. |
w |
Escriu en el fitxer. Si el fitxer existeix, es sobreescriu. Si no existeix, es crea. |
a |
Afegeix al fitxer. Si el fitxer no existeix, es crea. |
r+ |
Llegeix i escriu en el fitxer. El fitxer ha d'existir. |
w+ |
Llegeix i escriu en el fitxer. Si el fitxer existeix, es sobreescriu. Si no existeix, es crea. |
a+ |
Llegeix i afegeix al fitxer. Si el fitxer no existeix, es crea. |
Llegir un Fitxer
Mètode read
El mètode read
llegeix tot el contingut del fitxer com una cadena.
Mètode readlines
El mètode readlines
llegeix tot el contingut del fitxer i retorna un array on cada element és una línia del fitxer.
file = File.open("example.txt", "r") lines = file.readlines lines.each { |line| puts line } file.close
Mètode each_line
El mètode each_line
llegeix el fitxer línia per línia, permetent processar cada línia individualment.
Escriure en un Fitxer
Mètode write
El mètode write
escriu una cadena en el fitxer.
Mètode puts
El mètode puts
escriu una cadena en el fitxer, afegint un salt de línia al final.
Tancar un Fitxer
És important tancar el fitxer després d'haver acabat de treballar amb ell per alliberar els recursos del sistema.
Alternativament, podem utilitzar un bloc do...end
amb File.open
, que automàticament tanca el fitxer al final del bloc.
Exercicis Pràctics
Exercici 1: Llegir un Fitxer
Crea un fitxer anomenat sample.txt
amb el següent contingut:
Escriu un programa en Ruby que llegeixi i imprimeixi el contingut del fitxer.
Solució
Exercici 2: Escriure en un Fitxer
Escriu un programa en Ruby que escrigui les següents línies en un fitxer anomenat output.txt
:
Solució
File.open("output.txt", "w") do |file| file.puts("Línia 1: Hola, món!") file.puts("Línia 2: Això és un fitxer de sortida.") file.puts("Línia 3: Ruby és genial!") end
Resum
En aquesta secció, hem après com obrir, llegir, escriure i tancar fitxers en Ruby. També hem explorat els diferents modes d'accés per treballar amb fitxers. Aquests conceptes són fonamentals per a la manipulació de dades en aplicacions del món real. En la següent secció, explorarem les expressions regulars en Ruby.
Curs de Programació en Ruby
Mòdul 1: Introducció a Ruby
Mòdul 2: Conceptes Bàsics de Ruby
Mòdul 3: Treballant amb Col·leccions
Mòdul 4: Programació Orientada a Objectes en Ruby
- Classes i Objectes
- Variables i Mètodes d'Instància
- Variables i Mètodes de Classe
- Herència
- Mòduls i Mixins
Mòdul 5: Conceptes Avançats de Ruby
- Blocs, Procs i Lambdas
- Metaprogramació
- Gestió d'Excepcions
- Entrada/Sortida de Fitxers
- Expressions Regulars
Mòdul 6: Introducció a Ruby on Rails
- Què és Ruby on Rails?
- Configuració de l'Entorn Rails
- Creació d'una Aplicació Simple en Rails
- Arquitectura MVC
- Rutes
Mòdul 7: Proves en Ruby
- Introducció a les Proves
- Proves Unitàries amb Minitest
- Desenvolupament Basat en Comportament amb RSpec
- Mocking i Stubbing
Mòdul 8: Millors Pràctiques en Ruby
- Estil de Codi i Convencions
- Refactorització
- Optimització del Rendiment
- Millors Pràctiques de Seguretat