Domanda

Vorrei scrivere alcuni dati su un file in Ruby. Qual è il modo migliore per farlo?

È stato utile?

Soluzione

File.open("a_file", "w") do |f|
    f.write "some data"
end

Puoi anche usare f << "some data" o f.puts "some data" secondo il gusto / la necessità personale di avere una nuova linea. Cambia "w" in "a" se vuoi aggiungere al file invece di troncarlo con ogni aperto.

Altri suggerimenti

require 'rio'
rio('foo.txt') < 'bar'

http://rio.rubyforge.org/

Oltre File.new o File.open (e tutte le altre cose divertenti di IO) che potresti desiderare, in particolare se stai salvando da e caricando nuovamente in Ruby e i tuoi dati sono in oggetti, per guardare usando Marshal per salvare e caricare direttamente i tuoi oggetti.

L'uso di File :: open è il modo migliore di procedere:

File.open("/path/to/file", "w") do |file|
  file.puts "Hello file!"
end

Come precedentemente indicato, è possibile utilizzare " a " invece di " w " da aggiungere al file. Potrebbero essere disponibili altre modalità, elencate in ri IO, oppure in Ruby Quickref .

filey = File.new("/path/to/the/file", APPEND)
filey.puts "stuff to write"
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top