Rubyがミニツク

あなたのRubyの技術に関するより詳しい知識と理解を増やします。

Ruby入門コース

このコースについて

Rubyのeラーニング研修システムはRailsを使ってWebアプリケーション開発ができる技術者の育成を目指します。 そのため、Railsを扱うことができるだけのRubyの知識を得ることがRuby入門コースの目標となっています。

コンテンツ一覧

ヒント レッスンの名前をクリックすると、その内容を表示します。

次のコンテンツ ホームへ戻る

ファイル入出力

IOクラスのサブクラスにFileクラスがあり、ファイルの入出力はそのクラスを用いることでおこなえます。

file = File.open("foo.txt", "w")
file.close

openメソッドの第2引数はどのモードでファイルを開くかを指定しています。モードには以下のような種類があります。

モード 意味
“r” 読み込み専用。モードを省略した場合はこれになる
“r+” 読み込み/書き込み用
“w” 書き込み専用。ファイルがなければ新たに作り、既にあればファイルサイズを0にする
“w+” 読み込み/書き込み用。その他は"w"と同じ
“a” 追加書き込み専用。ファイルがなければ新たに作成する
“a+” 読み込み/追加書き込み用。ファイルがなければ新たに作る

Unix系のOSではテキストモードとバイナリモードに違いはありません。Windows系でバイナリモードを使う時はモード指定に"b"を付けます。

file = File.open("foo.txt", "rb")
file.close
OS 改行文字
Windows系 CR+LF
Unix系 LF

Windowsのテキストモードは以下のような相互変換をおこないます。

モード 動作
テキストモード 文字を表示する時に"\n"を"\r\n"にする。入力する時に"\r\nを"\n"にする
バイナリモード 改行文字の変換をおこなわない。0x1aをEOF(ファイルエンド)として扱わない


次のコンテンツ ホームへ戻る