MIME::QuotedPrintSection: Perl Programmers Reference Guide (3pm)Updated: 2001-09-21 |
MIME::QuotedPrintSection: Perl Programmers Reference Guide (3pm)Updated: 2001-09-21 |
use MIME::QuotedPrint;
$encoded = encode_qp($decoded); $decoded = decode_qp($encoded);
The following functions are provided:
The second argument is the line-ending sequence to use. It is optional and defaults to ``\n''. Every occurrence of ``\n'' is replaced with this string, and it is also used for additional ``soft line breaks'' to ensure that no line is longer than 76 characters. You might want to pass it as ``\015\012'' to produce data suitable for external consumption. The string ``\r\n'' produces the same result on many platforms, but not all.
An $eol of "`` (the empty string) is special. In this case, no ''soft line breaks`` are introduced and any literal ''\n" in the original data is encoded as well.
If you prefer not to import these routines into your namespace, you can call them as:
use MIME::QuotedPrint (); $encoded = MIME::QuotedPrint::encode($decoded); $decoded = MIME::QuotedPrint::decode($encoded);
Perl v5.6 and better allow extended Unicode characters in strings. Such strings cannot be encoded directly, as the quoted-printable encoding is only defined for single-byte characters. The solution is to use the Encode module to select the byte encoding you want. For example:
use MIME::QuotedPrint qw(encode_qp);
use Encode qw(encode);
$encoded = encode_qp(encode("UTF-8", "\x{FFFF}\n"));
print $encoded;
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.