Πρέπει να διαβάσω τα δεδομένα από τη βάση δεδομένων και στη συνέχεια να τα αποθηκεύσω σε ένα αρχείο κειμένου.
Πώς μπορώ να το κάνω αυτό στη Ruby; Υπάρχει κάποιο σύστημα διαχείρισης αρχείων στη Ruby;
Ψάχνετε για τα ακόλουθα;
File.open(yourfile, 'w') { |file| file.write("your text") }
Αυτή είναι η προτιμώμενη προσέγγιση στις περισσότερες περιπτώσεις:
File.open(yourfile, 'w') { |file| file.write("your text") }
Όταν ένα μπλοκ περνάει στο File.open
, το αντικείμενο File θα κλείσει αυτόματα όταν το μπλοκ τερματιστεί.
Αν δεν περάσετε ένα μπλοκ στο File.open
, θα πρέπει να βεβαιωθείτε ότι το αρχείο έχει κλείσει σωστά και ότι το περιεχόμενο γράφτηκε στο αρχείο.
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
Μπορείτε να το βρείτε στην τεκμηρίωση:
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;
}