File I/O in Ruby Programming Language


File input/output (I/O) is an essential operation in many software applications, and the Ruby programming language provides several methods for handling file I/O. In this document, we’ll cover the basics of file I/O in Ruby programming language, including how to read and write files.

Reading Files in Ruby

To read a file in Ruby, you can use the method. Here’s an example:"file.txt", "r") do |file|
  # Do something with the file

In this example, file.txt is the name of the file you want to read, and "r" specifies that you want to open the file in read mode. The method takes a block, which receives the file object as an argument.

Inside the block, you can read the contents of the file using methods like, file.readline, or file.each_line. For example:"file.txt", "r") do |file|
  contents =
  puts contents

This code reads the entire contents of the file into a variable called contents and then prints it to the console. You can also read the contents of a file line by line using the file.readline method or iterate over the lines of a file using the file.each_line method.

Writing Files in Ruby

To write to a file in Ruby, you can use the method again, but this time with the "w" mode option. Here’s an example:"file.txt", "w") do |file|
  file.write("Hello, world!")

This code opens the file file.txt in write mode and writes the string “Hello, world!” to it. If the file does not exist, it will be created. You can also use the file.puts method to write a string to a file followed by a newline character, or the file.print method to write a string without a newline character.

When writing to a file, it’s important to note that any existing content in the file will be overwritten by default. If you want to append to an existing file instead, you can use the "a" mode option instead of "w".

Closing Files in Ruby

It’s important to close the file after you’re done reading from or writing to it. You can do this by calling the file.close method, or by using the method with a block, as shown in the previous examples. When the block exits, the file will be automatically closed. Failing to close a file can result in resource leaks, and can cause your program to run out of available file handles.

File Paths in Ruby

When working with files in Ruby, it’s important to understand how file paths work. A file path is simply a string that specifies the location of a file on your computer. In Ruby, file paths can be specified using either forward slashes or backslashes, depending on your operating system. For example:

# Windows"C:\\\\\\\\Users\\\\\\\\User\\\\\\\\file.txt", "r")

# Linux/Mac"/home/user/file.txt", "r")

Alternatively, you can use the File.join method to concatenate parts of a file path together in a platform-independent way:

File.join("path", "to", "file.txt")

This will generate a file path that is appropriate for the current operating system.


In this document, we’ve covered the basics of file I/O in Ruby programming language, including how to read and write files, and how to work with file paths. With these tools, you can build powerful applications that interact with the file system.

Previous Post

Exception Handling in Ruby Programming Language

Next Post

Regular Expressions: Understanding regular expressions in Ruby programming language, how to use them to search and manipulate text.

Related Posts