【Ruby3.x】IO::write()メソッドの使い方
writeメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
writeメソッドは、IOオブジェクトに対してデータを書き込むメソッドです。このメソッドは、開いているファイルやネットワークソケットなどの入出力先(IOオブジェクト)に、指定した文字列やバイナリデータを送信する際に使用されます。書き込みたいデータを引数として渡すことで、そのデータがIOオブジェクトに送られます。複数の引数を指定することも可能で、その場合はすべての引数が連結されてからIOオブジェクトに書き込まれます。例えば、file.write("Hello", "World")と記述すると、「HelloWorld」という文字列がファイルに書き込まれます。
メソッドの実行後には、実際にIOオブジェクトに書き込まれたデータのバイト数を整数で返します。このwriteメソッドの重要な特徴として、putsやprintメソッドのように自動で改行コード(\n)を追加しない点が挙げられます。そのため、もし書き込んだデータの後に改行が必要な場合は、明示的に"\n"などの改行コードを書き込むデータの中に含める必要があります。
この特性により、ファイルに特定のフォーマットのデータ(例: CSVファイル、ログファイル)を厳密な形式で書き込んだり、ネットワーク通信においてプロトコルに応じたバイナリデータを正確に送信したりするなど、データの内容や書式を細かく制御したい場面で非常に役立ちます。
構文(syntax)
1File.open("output.txt", "w") do |file| 2 file.write("This is a line of text.") 3end
引数(parameters)
string
- string: 書き込む内容を指定する文字列
戻り値(return)
Integer
writeメソッドは、IOオブジェクトに書き込まれたバイト数を整数で返します。