http://www.perlmonks.org?node_id=176027

Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Hi, I retrieve the body of my message from an Oracle 8i LONGRAW column, the data being a text file previously inserted using the <input type="file"> form element. I'm then using a perl script to send the content via MIME::Lite:
$dbh->{LongReadLen} = 256 * 1024; ($body) = $dbh->selectrow_array("select content from $dtab where name += '$name'"); $body =~ s/\r/\n/g;
I then print out the body...
open (OF, ">body.txt"); print OF $body; close (OF);
I have all the details for sending the message, but it arrives without newlines as one loong message.
$msg = MIME::Lite->new( From => $from, To => $to, Subject => $subject, Type => 'text/html', Data => qq{ $body } ); MIME::Lite->send('smtp', 'smtpsvr.net, Timeout=>240); $msg->send();
I've tried most char substitions on $body such as:
s/\cM/\n/ s/\r\n/\n/
only s/\r/\n/ has any effect and only on the data written to the filehandle. Otherwise the body content is just one long string, no carriage returns! Strange one, perhaps the Monks can help?