Questa guida ti mostrerà come utilizzare i metodi Ruby I/O per aprire, leggere, scrivere e creare nuovi file.
Iniziamo dalle basi dell'input e dell'output in Ruby
I/O di base
I metodi I/O di base in Ruby sono quelli che utilizziamo per stampare il testo sullo schermo.
Mette
Il metodo Puts è probabilmente il metodo I/O più comune.
Per stampare qualcosa sullo schermo, semplicemente:
my_var = 100Il comando Puts stamperà il valore memorizzato nella variabile di riferimento e aggiungerà una nuova riga alla fine.
Stampa
Il metodo di stampa è simile ai put, ma non aggiunge una nuova linea finale. Lascia il cursore nella stessa linea.
Stampa "Hello World!"Putc
Un altro metodo I/O di base comune è il metodo Putc. Funziona in modo simile al metodo Puts and Stamp, ma stampa un carattere alla volta.
Per esempio:
my_var = "Hello World!"Quanto sopra dovrebbe stampare il personaggio 'h.'
Prende
Il metodo Get, d'altra parte, prenderà input dall'utente utilizzando il flusso di stdin.
mette "Inserisci la tua età:"File i/o
Sebbene comprendere come lavorare con lo standard in e fuori è utile, può essere molto limitante quando hai bisogno di dati persistenti.
In tal caso, possiamo utilizzare l'input e l'output del file per leggere e scrivere sui file.
File.Nuovo()
Il primo metodo utile quando si lavora con i file è il nuovo metodo. Questo crea un nuovo oggetto file con il nome del file specificato e la modalità.
La sintassi generale è:
f = file.new ('filename', 'modalità')Il nome file può essere qualsiasi nome ed estensione.
Ruby supporta varie modalità di file. Questi includono:
Ad esempio, per creare un nuovo file che non esiste:
f = file.Nuovo ("Nuovo.txt "," a+")Nell'esempio sopra, creiamo un nuovo oggetto file con il nome nuovo.txt e la modalità di lettura-scrittura. Poiché il file non esiste, viene creato automaticamente.
Nella riga successiva, scriviamo nel file usando il metodo Syswrite e, infine, chiudi il file.
$ cat nuovo.TXTFile.Aprire()
È possibile utilizzare il metodo aperto per aprire un file. Una volta aperto un file, puoi leggerlo.
Per esempio:
f = file.aperto ("Nuovo.TXT")Nell'esempio sopra, utilizziamo il metodo aperto per aprire un file esistente nella directory di lavoro corrente.
Una volta aperto, possiamo leggere il contenuto del file.
Si noti che non specifichiamo la modalità durante l'apertura del file per la lettura perché è impostato per leggere quando non specificato.
Per scrivere in un file, è necessario specificare la modalità come scrittura o scrittura di lettura come mostrato nell'esempio seguente:
f = file.aperto ("Nuovo.txt "," r+")Nell'esempio sopra, specifichiamo la modalità come la scrittura di lettura come stiamo scrivendo nel file.
File.rinominare()
Oltre a leggere e scrivere in un file, Ruby consente di eseguire altre operazioni, incluso la ridenominazione del file utilizzando il metodo Rinomina.
Esempio:
f = file.rinominare ("Nuovo.txt "," ribattezzato.TXT")Il metodo sopra dovrebbe rinominare il nuovo.file txt da rinominare.TXT.
File.Eliminare()
Per eliminare un file, è possibile utilizzare il metodo Elimina e specificare il nome file come argomento. Per esempio:
mette "#file.Elimina ("Rinominata.txt ") eliminato!"File.dirname ()
Il metodo Dirname consente di ottenere il percorso del file senza includere il nome file.
Per esempio:
f = file.Dirname ("/var/log/lastlog")Questo dovrebbe visualizzare l'intero percorso verso la directory in cui si trova il file.
# Ruby FileIO.RbFile.esiste?
Per verificare se esiste un file, utilizzare il file.esiste? metodo. Restituisce un vero vero se il valore esiste e falso se altrimenti.
mette file.esiste?("/etc/passwd")Directory i/o
Se vuoi lavorare con le directory in Ruby, puoi utilizzare la classe DIR che contiene metodi per tali operazioni.
Loro includono:
Conclusione
Questo tutorial ti ha mostrato come utilizzare varie operazioni di input/output di rubini. È bene notare che ci sono altre operazioni che puoi eseguire oltre a quelle discusse in questo tutorial. Considera la documentazione di File e DIR Class per saperne di più.