ruby文件
In this tutorial we will learn about File handling in Ruby programming language. We will learn how to read data from a file, write data into a file, append data in an existing file with simple code examples. So let's get started.
在本教程中,我们将学习Ruby编程语言中的文件处理。 我们将学习如何通过简单的代码示例从文件读取数据,将数据写入文件,将数据追加到现有文件中。 因此,让我们开始吧。
Ruby:读取文件 (Ruby: Reading a File)
Reading files are very simple in Ruby than other languages.
与其他语言相比,使用Ruby 读取文件非常简单。
![Reading Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/756ee5d18220fdf28b2ca31895586a40.png)
This is the content of the file named sample.txt
. Now, we are going to read the contents of this file.
这是名为sample.txt
的文件的内容。 现在,我们将读取该文件的内容。
![Reading Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/cd2446039bad7eb6c3caa6a2824a0612.png)
This small piece of code reads the contents of any file. You might be confused that there is no statement about the file name. We can specify the file name in the Command Prompt
while running the program.
这小段代码读取任何文件的内容。 您可能会困惑, 没有关于文件名的声明 。 我们可以在运行程序时在Command Prompt
指定文件名。
We run by: ruby files.rb sample.txt
Here's the output:
这是输出:
![Reading Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/5fbe97964632566d5b2475c85e08ecca.png)
This is one method of reading the file. We could also read the file by specifying the name of the file in the program. Like this:
这是一种读取文件的方法。 我们也可以通过在程序中指定文件名来读取文件。 像这样:
![Reading Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/84df50e95b01ed4bd204278b4d862df8.png)
Here, we are opening the file using open
method. Variable file acts as a file handler here. So, for each line we are calling the gets
method using the variable
file and storing it in the variable line and printed using puts
method.
在这里,我们使用open
方法打开文件。 可变文件在这里充当文件处理程序 。 因此,对于每一行,我们都使用variable
文件调用gets
方法,并将其存储在变量行中,并使用puts
方法进行打印。
The output of the program is :
该程序的输出为:
![Reading Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/7bfdf1b040341f5ef735ac0908cfdba1.png)
Ruby:在文件中写入 (Ruby: Writing in a Files)
We have to create a File object
using new
method for reading data from files or writing data to files.
我们必须使用new
方法创建File object
以便从文件读取数据或将数据写入文件。
![Writing Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/e1fb9260ba08876030e86978e876b204.png)
Here fil is the file object which is created using the new
method. The new method has two parameters, the first parameter is the name
of the file and the second parameter is the mode
. w
represents write mode to a file. We are using the file object fil
with the print
and puts
method to literally write to the file.
fil是使用new
方法创建的文件对象。 新方法有两个参数,第一个参数是文件name
,第二个参数是mode
。 w
表示文件的写入模式 。 我们将文件对象fil
与print
和puts
方法一起使用,以字面上的方式写入文件。
When we are finished, we should always close
the file. It is a good practice to always close
the file when done. If we don't close the file, the file maybe corrupted when we try to open it later sometimes. The data printed using print
and puts
method are stored in the buffer, the buffer is flushed when we close the file.
完成后,我们应该始终close
文件。 最好在完成后始终close
文件。 如果我们不关闭文件,则有时我们稍后尝试打开它时,文件可能已损坏。 使用print
和puts
方法print
的数据存储在缓冲区中 ,当我们关闭文件时,将刷新 缓冲区 。
The output of the program is :
该程序的输出为:
![Writing Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/b8010c06bd2f0d45fe7e2fb3ea94734d.png)
Actually, nothing happens when we execute the program. But when we view the file, the content is written in the file. Here is another example,
实际上,当我们执行程序时什么也没有发生。 但是,当我们查看文件时 ,内容将写入文件中。 这是另一个例子
![Writing Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/42d00ca6b3590540cecd539279dad46f.png)
![Writing Files in Ruby](https://i-blog.csdnimg.cn/blog_migrate/bb40232ebc9bd741eb5d3ebd99c42293.png)
翻译自: https://www.studytonight.com/ruby/file-handling-in-ruby
ruby文件