日々精進

新しく学んだことを書き留めていきます

ファイルの保存

Mechanizeを使ってWebサイトからダウンロードした画像ファイルを保存したらぐちゃぐちゃになっていて困った。
原因を調べると、ファイルをopenするときに下記のようにテキストモードで開いていたのが原因らしい。
file = open("pic.jpg", "w+")
正しくは↓のようにバイナリモードで開く。
file = open("pic.jpg", "w+b")
テキストモードとバイナリモードの違いは、テキストモードの場合は改行コードを環境に合わせて変換してから書き込むことがそうな。


以下のサイトを参考にしました。
Web の画像をファイルに保存する方法 - gan2 の Ruby 勉強日記