■分からないこと
Rubyでメール送信のコードを書いて外部ファイルから内容を読みこんで送ろうと思っています。
テストで中身が「hello」のようなtest.txtファイルでは送信がうまくいったのですが、本番用のwordファイルではエラーが出てしまいます。
エラーはinvalid byte sequence in UTF-8 (ArgumentError)と表示されます。
原因を教えていただければと思います。
よろしくお願い致します。
ruby
1require 'mail' 2 3mail_from = 'test@gmail.com' 4mail_passwd = 'aaaaaa' 5mail_to = 'test@gmail.com' 6mail_bcc = 'test@gmail.com' 7mail_subject = 'テスト' 8file = File.open("DM.doc") 9mail_body = file.read 10 11file.close 12 13Mail.defaults do 14 delivery_method :smtp, { 15 :address => 'smtp.gmail.com', 16 :port => 587, 17 :domain => 'example.com', 18 :user_name => "#{mail_from}", 19 :password => "#{mail_passwd}", 20 :authentication => :login, 21 :enable_starttls_auto => true 22 } 23end 24 25m = Mail.new do 26 from "#{mail_from}" 27 to "#{mail_to}" 28 bcc "#{mail_bcc}" 29 subject "#{mail_subject}" 30 body "#{mail_body}" 31 32end 33 34m.charset = "UTF-8" 35m.content_transfer_encoding = "8bit" 36m.deliver
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/06 08:27