Escribir en un archivo en Ruby
La clase File
en Ruby tiene un método write()
para escribir en un archivo. El método devuelve la longitud escrita y asegura que el archivo se cierre automáticamente. Tiene la siguiente sintaxis.
File.write('/your/file/path', 'Message content')
Escribamos un mensaje simple en un archivo.
File.write('my-file.txt', 'A simlpe message.')
El código anterior nos ayuda a crear un archivo llamado my-file.txt
si aún no existe y nos permite escribir A simlpe message.
en el archivo. Si el archivo ya existe, el código sobrescribe el archivo y su contenido.
En lugar de sobrescribir el contenido del archivo, Ruby proporciona una forma de agregar contenido al especificar la opción modo
, y se muestra un ejemplo a continuación.
File.write("my-file.txt", " Another simple message\n", mode: 'a')
El \n
en el ejemplo anterior es un carácter de nueva línea y significa que el siguiente mensaje que escribiremos en este archivo debe ir a la siguiente línea. Escribamos otro mensaje para confirmar esto.
File.write("my-file.txt", "This message should go on the next line", mode: 'a')
Como una forma de resumir la explicación anterior, escribamos un programa simple que escriba cinco líneas de texto en un archivo.
todos = [
"wake up, shower, and leave for work",
"Pick up John from school",
"Meet with team to practice presentation",
"Dinner with friends",
"Relax and bedtime."
]
todos.each_with_index do |todo, index|
File.write("todo-list.txt", "#{index + 1}. #{todo}\n", mode: 'a')
end
A continuación se muestra el contenido del archivo todo-list.txt
después de ejecutar el programa.
Producción :
1. wake up, shower, and leave for work
2. Pick up John from school
3. Meet with team to practice presentation
4. Dinner with friends
5. Relax and bedtime.