open, binmode, seek, getc, putc

RubyのFileを使って配列もどきを作りました。あ、でもcloseしていませんね。
書き込むときは自動的に一文字目がかかれるのに、読み出すときは明示的にchrを取らないと文字列になりません。

class FileArray
    def initialize(filename)
        @file = File.open(filename, "r+")
        @file.binmode
    end

    def [](index)
        @file.seek(index)
        return @file.getc.chr
    end

    def []=(index, value)
        @file.seek(index)
        @file.putc(value)
    end
end

a = FileArray.new("array.txt")
a[0] = 'A'
a[1] = 'B'
a[2] = 'C'

for i in 0..2
    puts a[i]
end