box-o-sand/lrthw-remnants/ex20.rb

36 lines
585 B
Ruby
Raw Normal View History

2012-03-22 02:04:36 +00:00
input_file = ARGV.first
2012-03-22 02:03:19 +00:00
def print_all(f)
2012-03-22 02:04:36 +00:00
puts f.read
2012-03-22 02:03:19 +00:00
end
def rewind(f)
f.seek(0, IO::SEEK_SET)
end
def print_a_line(line_count, f)
2012-03-22 02:04:36 +00:00
puts "#{line_count} #{f.readline}"
2012-03-22 02:03:19 +00:00
end
current_file = File.open(input_file)
puts "First let's print the whole file:"
puts # a blank line
print_all(current_file)
puts "Now let's rewind, kind of like a tape."
rewind(current_file)
puts "Let's print three lines:"
current_line = 1
print_a_line(current_line, current_file)
2012-03-22 02:04:36 +00:00
current_line += 1
2012-03-22 02:03:19 +00:00
print_a_line(current_line, current_file)
2012-03-22 02:04:36 +00:00
current_line += 1
2012-03-22 02:03:19 +00:00
print_a_line(current_line, current_file)