/**
  * @param int $len[optional] = 0
  * @return string
  */
 function GetBinaryBody($len = 0)
 {
     $body = $this->_body;
     $bodyLen = strlen($body);
     $bodyIsTrim = false;
     /*if ($len > 0 && $bodyLen > $len)
     		{
     			$body = substr($body, 0, $len);
     			$bodyIsTrim = true;
     		}*/
     switch (strtolower($this->Headers->GetHeaderValueByName(MIMEConst_ContentTransferEncodingLower))) {
         case 'quoted-printable':
             $body = quoted_printable_decode($body);
             break;
         case 'base64':
             $pos1 = strpos($body, '*');
             $pos2 = @strpos($body, '*', $pos1 + 1);
             if ($pos2 !== false) {
                 $body = @substr($body, $pos2 + 1);
             }
             $body = base64_decode($body);
             break;
         case 'x-uue':
             $body = ConvertUtils::UuDecode($body);
             break;
     }
     /*if ($bodyIsTrim)
     			{
     				$body .= ' 
     <-------------------------------------->
     Message text is truncated here because it\'s too long. If you need to
     view full message text, you can dowload it locally by clicking "Save"
     button in "Full View" mode and open via any local mailer (e.g. Outlook Express).';
     			}*/
     return $body;
 }
 function DecodeBodyByType($body, $type)
 {
     switch (strtolower($type)) {
         case 'quoted-printable':
             $body = quoted_printable_decode($body);
             break;
         case 'base64':
             $pos1 = strpos($body, '*');
             $pos2 = @strpos($body, '*', $pos1 + 1);
             if ($pos2 !== false) {
                 $body = @substr($body, $pos2 + 1);
             }
             $body = base64_decode($body);
             break;
         case 'x-uue':
             $body = ConvertUtils::UuDecode($body);
             break;
     }
     return $body;
 }