Menulis Data Ke Dalam File Dalam Pemrogramman Ruby
Software Engineering Enthusiast | Blogger | Creator of RubyPedia.com
18 September 2017

Menulis Data Ke Dalam File

Untuk menulis data kedalam file, kita dapat menggunakan metode write() yang didefinisikan didalam kelas file. Sebagai contoh, jika kita ingin membuat file untuk menyimpan data yang dibaca dari keyboard maka kodenya dapat ditulis seperti berikut:

#!/usr/bin/ruby

##########################################################################
# Nama File : file.rb
##########################################################################

NAMA_FILE = 'kontak.txt'

class Kontak
    def initialize(nama, nohp)
        @nama = nama
        @nohp = nohp
    end

    def simpan()
        File.open(NAMA_FILE, 'a') do | f |
            f.write("#{@nama}, #{@nohp}\n")
            f.close
        end
    end
end

print "Masukkan jumlah data: "

n = gets.to_i

1.upto(n) do | i |
    puts   "\nData ke-#{i}"
    print  "Nama: "
    nama  = gets.chop
    print = "No HP: "
    nohp  = gets.chop
    kontak = Kontak.new(nama, nohp)
    kontak.simpan
end

puts "\nData sudah tersimpan didalam file #{NAMA_FILE}."

Hasil program:

Masukkan jumlah data: 4

Data ke-1
Nama: Fika Ridaul Maulayya
No HP: 0857 8585 2224

Data ke-2
Nama: Kurnia Andi Nugroho
No HP: 0857 9967 0987

Data ke-3
Nama: Mahsun Jauhari
No HP: 0857 4455 0000

Data ke-4
Nama: Faisal Mahadi
No HP: 0857 2121 9900

Data sudah tersimpan didalam file kontak.txt.

Eksekusi kode diatas akan menciptakan file baru dengan nama kontak.txt didalam direktori kerja. Isi file tersebut dapat dilihat menggunakan perintah:

$ cat kontak.txt

Selain menggunakan write(), kita juga dapat menggunakan metode syswrite() untuk menulis data kedalam file. Sama seperti write(), metode syswrite() juga didefinisikan didalam kelas file. Dengan demikian kode diatas juga dapat ditulis seperti berikut ini:

#!/usr/bin/ruby

##########################################################################
# Nama File : file.rb
##########################################################################

NAMA_FILE = 'kontak.txt'

class Kontak
    def initialize(nama, nohp)
        @nama = nama
        @nohp = nohp
    end

    def simpan()
        File.open(NAMA_FILE, 'a') do | f |
            #menggunakan metode File.syswrite()
            f.syswrite("#{@nama}, #{@nohp}\n")
            f.close
        end
    end
end

print "Masukkan jumlah data: "

n = gets.to_i

1.upto(n) do | i |
    puts   "\nData ke-#{i}"
    print  "Nama: "
    nama  = gets.chop
    print = "No HP: "
    nohp  = gets.chop
    kontak = Kontak.new(nama, nohp)
    kontak.simpan
end

puts "\nData sudah tersimpan didalam file #{NAMA_FILE}."
Blog ini telah dibaca sebanyak 322 kali
Kelas File File Ruby Write Syswrite Rails

Sekilas Tentang Penulis

Fika Ridaul Maulayya
Software Engineering Enthusiast | Blogger | Creator of RubyPedia.com

KOMENTAR

blog comments powered by Disqus