Esta guía le mostrará cómo usar métodos de E/S de Ruby para abrir, leer, escribir y crear nuevos archivos.
Comencemos en los conceptos básicos de entrada y salida en Ruby
E/S básica
Los métodos de E/S más básicos en Ruby son los que usamos para imprimir texto en la pantalla.
Pone
El método PUTS es probablemente el método de E/S más común.
Para imprimir algo en la pantalla, simplemente:
my_var = 100El comando PUTS imprimirá el valor almacenado en la variable referenciada y agregará una nueva línea al final.
Imprimir
El método de impresión es similar al PUTS, pero no agrega una nueva línea. Deja el cursor en la misma línea.
Imprimir "Hello World!"Putc
Otro método de E/S básico común es el método PUTC. Funciona de manera similar al método Puts e imprima, pero imprime un carácter a la vez.
Por ejemplo:
my_var = "Hola mundo!"Lo anterior debe imprimir el personaje 'H.'
Obtiene
El método gets, por otro lado, obtiene la entrada del usuario utilizando la transmisión Stdin.
pone "ingrese a su edad:"E/S de archivo
Aunque es útil comprender cómo trabajar con el estándar dentro y fuera, puede ser muy limitante cuando necesita datos persistentes.
En tal caso, podemos usar la entrada y salida del archivo para leer y escribir en archivos.
Archivo.Nuevo()
El primer método útil cuando se trabaja con archivos es el nuevo método. Esto crea un nuevo objeto de archivo con el nombre de archivo especificado y el modo.
La sintaxis general es:
F = archivo.nuevo ('nombre de archivo', 'modo')El nombre de archivo puede ser cualquier nombre y extensión.
Ruby admite varios modos de archivo. Éstas incluyen:
Por ejemplo, para crear un nuevo archivo que no exista:
F = archivo.nuevo nuevo.txt "," a+")En el ejemplo anterior, creamos un nuevo objeto de archivo con el nombre nuevo.txt y el modo de lectura-escritura. Dado que el archivo no existe, se crea automáticamente.
En la siguiente línea, escribimos en el archivo utilizando el método syswrite y, finalmente, cierre el archivo.
$ Cat NUEVO.TXTArchivo.Abierto()
Puede usar el método abierto para abrir un archivo. Una vez que abra un archivo, puede leerlo o escribirle.
Por ejemplo:
F = archivo.Abierto ("Nuevo.TXT")En el ejemplo anterior, utilizamos el método abierto para abrir un archivo existente en el directorio de trabajo actual.
Una vez abierto, podemos leer el contenido del archivo.
Observe que no especificamos el modo al abrir el archivo para leer porque está configurado para leer cuando no se especifica.
Para escribir en un archivo, debe especificar el modo como escritura o lectura-escritura como se muestra en el ejemplo a continuación:
F = archivo.Abierto ("Nuevo.txt "," r+")En el ejemplo anterior, especificamos el modo como lectura-escritura mientras estamos escribiendo en el archivo.
Archivo.rebautizar()
Además de leer y escribir en un archivo, Ruby le permite realizar otras operaciones, incluido el cambio de nombre del archivo utilizando el método de cambio de nombre.
Ejemplo:
F = archivo.Cambiar el nombre ("Nuevo.txt "," renombrado.TXT")El método anterior debe cambiar el nombre del nuevo.archivo txt a renombrado.TXT.
Archivo.Borrar()
Para eliminar un archivo, puede usar el método Eliminar y especificar el nombre de archivo como argumento. Por ejemplo:
pone "#archivo.eliminar ("renombrado.txt ") eliminado!"Archivo.dirname ()
El método DirName le permite obtener la ruta del archivo sin incluir el nombre de archivo.
Por ejemplo:
F = archivo.dirname ("/var/log/lastlog")Esto debe mostrar la ruta completa al directorio donde se encuentra el archivo.
# Ruby Fileio.RBArchivo.existe?
Para verificar si existe un archivo, use el archivo.existe? método. Devuelve un verdadero booleano si el valor existe y falso si es lo contrario.
Ponga el archivo.existe?("/etc/passwd")E/S del directorio
Si desea trabajar con directorios en Ruby, puede usar la clase Dir que contiene métodos para tales operaciones.
Incluyen:
Conclusión
Este tutorial le ha mostrado cómo usar varias operaciones de entrada/salida de Ruby. Es bueno tener en cuenta que hay otras operaciones que puede realizar más allá de las discutidas en este tutorial. Considere la documentación del archivo y la clase Dir para obtener más información.