Manejo de archivos en Ruby

Es una forma de procesar un archivo, como crear un nuevo archivo, leer contenido en un archivo, escribir contenido en un archivo, agregar contenido a un archivo, cambiar el nombre del archivo y eliminar el archivo.

Modos comunes para el manejo de archivos
“r” : modo de solo lectura para un archivo.
“r+” : Modo de lectura y escritura de un archivo.
“w” : Modo de solo escritura para un archivo.
“w+” : Modo de lectura y escritura de un archivo.
“a” : modo de solo escritura, si el archivo existe, agregará los datos; de lo contrario, se creará un nuevo archivo.
“a+” : modo de lectura y escritura, si el archivo existe, agregará los datos; de lo contrario, se creará un nuevo archivo.

Creando un nuevo archivo
Podemos crear un nuevo archivo usando el método File.new() para leer, escribir o ambos, según la string de modo. podemos usar el método fileobject.close() para cerrar ese archivo.

Escritura en el archivo
Con la ayuda del método syswrite, puede escribir contenido en un archivo. El archivo debe abrirse en modo de escritura para este método. El contenido nuevo sobrescribirá el contenido antiguo en un archivo ya existente.

Sintaxis

fileobject = File.new("filename.txt", "mode")
fileobject.syswrite("Text to write into the file")
fileobject.close()

A continuación se muestra la implementación para crear un nuevo archivo y escribir en él.

# File Handling Program
  
# Creating a file
fileobject = File.new("sample.txt", "w+"); 
  
# Writing to the file
fileobject.syswrite("File Handling");    
  
 # Closing a file
fileobject.close();                        

Producción:

Descripción:
se crea un archivo de texto denominado sample.txt con permiso de lectura y escritura. El contenido «Manejo de archivos» se escribe en el archivo usando el método syswrite. Finalmente cierre el archivo. Cuando abra el archivo sample.txt, contendrá la string «Manejo de archivos».

Leer un archivo
Hay tres métodos diferentes para leer un archivo.

1. fileobject.sysread(20): devuelve solo los primeros 20 caracteres de ese archivo
2. fileobject.read: devuelve todo el contenido de un archivo
3. fileobject.readlines: devuelve los valores como una array de líneas

Método
sysread El método sysread también se utiliza para leer el contenido de un archivo. Con la ayuda de este método, puede abrir un archivo en cualquier modo. Imprimirá hasta n caracteres mencionados en el método sysread del archivo.

Sintaxis

fileobject = File.new("filename.txt", "r")
fileobject.sysread(20)
fileobject.close()

A continuación se muestra la implementación para leer el contenido de un archivo.

# File Handling Program
  
# Opening a file
fileobject = File.open("sample.txt", "r"); 
  
# Reading the first n characters from a file
puts(fileobject.sysread(21));
  
# Closing a file
fileobject.close();                         
  
# Opening a file
fileobject = File.open("sample.txt", "r");     
  
# Read the values as an array of lines
print(fileobject.readlines);             
puts
  
# Closing a file
fileobject.close();                        
  
# Opening a file
fileobject = File.open("sample.txt", "r"); 
  
# Read the entire content from a file
print(fileobject.read());    
  
# Closing a file
fileobject.close();                         

Producción:

Descripción:
el archivo de texto de muestra contiene la string «Manejo de archivos en lenguaje Ruby». El archivo se abre con permiso de solo lectura. El resultado anterior muestra la forma diferente de leer el archivo e imprimirlo. El método sysread lee solo 21 caracteres y luego imprime los primeros 21 caracteres. El método readlines lee los valores como una array de líneas. El método de lectura lee todo el contenido como una string del archivo.

Cambio de nombre y eliminación de un archivo
Los archivos de Ruby se renombran mediante el método de cambio de nombre y se eliminan mediante el método de eliminación.

Consultas de archivos
Para comprobar si el archivo existe o no

# Rename the file name
puts File.rename("sample.txt", "newSample.txt") 
  
# Delete the existing file
puts File.delete("sample1.txt")    
  
# Checking the old filename is existing or not 
puts File.file?("sample.txt")
  
# Checking the renamed file is exiting or not
puts File.file?("newSample.txt")
  
# Checking the file have read permission
puts File.readable?("newSample.txt")
  
 # Checking the file have write permission
puts File.writable?("newSample.txt")        

Producción:

Descripción:
El método de cambio de nombre se usa para cambiar el nombre del archivo que contiene el nombre antiguo con el nuevo nombre y el método de cambio de nombre imprime ‘0’ para que se cambie el nombre del archivo; de lo contrario, imprime ‘1’. El método de eliminación se usa para eliminar el archivo existente y imprimirá ‘1’ si se elimina el archivo; de lo contrario, imprimirá ‘0. ¿El archivo? El método se utiliza para verificar si el archivo existe o no. Devolverá falso si el archivo no existe y de lo contrario verdadero. En nuestro caso, el archivo de texto sample.txt no existe porque le cambiamos el nombre a newSample.txt file, por lo que devolverá falso. El archivo newSample existe, por lo que devolverá verdadero. El archivo newSample tiene permiso de lectura y escritura, por lo que devolverá verdadero para las dos últimas declaraciones.

Publicación traducida automáticamente

Artículo escrito por Santhosh220897 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *