Man reikia nuskaityti duomenis iš duomenų bazės ir išsaugoti juos tekstiniame faile.
Kaip tai padaryti "Ruby" kalba? Ar yra kokia nors failų valdymo sistema "Ruby"?
Daugeliu atvejų šis metodas yra priimtiniausias:
File.open(yourfile, 'w') { |file| file.write("your text") }
Kai File.open
perduodamas blokas, failo objektas bus automatiškai uždarytas, kai blokas baigsis.
Jei File.open
neperduodate bloko, turite įsitikinti, kad failas yra tinkamai uždarytas, o turinys buvo įrašytas į failą.
begin
file = File.open("/tmp/some_file", "w")
file.write("your text")
rescue IOError => e
#some error occur, dir not writable etc.
ensure
file.close unless file.nil?
end
Tai galite rasti dokumentacijoje:
static VALUE rb_io_s_open(int argc, VALUE *argv, VALUE klass)
{
VALUE io = rb_class_new_instance(argc, argv, klass);
if (rb_block_given_p()) {
return rb_ensure(rb_yield, io, io_close, io);
}
return io;
}
Ruby File klasė suteiks jums ::new
ir ::open
, tačiau jos giminaitė, IO klasė, gilinasi į #read
ir #write
.