Perl Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript



Perl Examples

Quick Start
Perl Unicode
Perl Byte Array
Perl Certs
Perl Email
Perl Encryption
Perl FTP
HTML-to-XML
Perl HTTP
Perl IMAP
Perl MHT
Perl MIME
Perl RSA
Perl S/MIME
Perl Signatures
Perl Socket
Perl Spider
Perl Tar
Perl Upload
Perl XML
Perl XMP
Perl Zip

More Examples...
String
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor

Unreleased...
Service
PPMD
Deflate
Bzip2
LZW
Bz2
DH Key Exchange
DSA
Icon

 

 

 

 

 

 

 

Recursively Descend MIME Message

Sample program showing how to use recursion in Perl to examine a MIME message and print the message structure.

Download Perl Programming Example Scripts

# file: mimeTraverse.pl
# Perl MIME parsing script / create MIME in Perl.

use chilkat;

sub traverseMime {
	
	my $mime = $_[0];
	my $level = $_[1];
   
	$line = "";
		
	for (my $i = 0; $i < $level; $i++) {
		$line = $line . "----";
	}
	
	$line = $line . $mime->contentType();
		
	print $line . "\n";
		
	my $n = $mime->get_NumParts();
	
	for (my $i = 0; $i < $n; $i++) {
		my $part = $mime->GetPart($i);
		traverseMime($part,$level+1);
	}

}

# This example builds a complex email:
# -- one that has both plain-text and HTML alternative bodies.
# -- the HTML has embedded images
# -- there are multiple attachments.
# We then examine the MIME structure using Chilkat MIME.
		
# First, we'll need the email component unlocked...
$mailman = new chilkat::CkMailMan();
$mailman->UnlockComponent("anything for 30-day trial");

# We'll convert a web page into an email with embedded
# images.
$mht = new chilkat::CkMht();
$mht->UnlockComponent("anything for 30-day trial");
		
# Our URL was picked at random...
$email = $mht->GetEmail("http://www.masukolandscaping.com/");
		
# Add a plain-text alternative body.
$email->AddPlainTextAlternativeBody("this is the plain-text alternative...");
		
# Add a few file attachments:
$strContentType = new chilkat::CkString();
# AddFileAttachment returns the auto-selected content-type in strContentType
$email->AddFileAttachment("images/dudeRuby.gif",$strContentType);
$email->AddFileAttachment("blah.txt",$strContentType);
		
# Now we have a complex $email->  Get it as a MIME object and examine
# the structure...
$mime = new chilkat::CkMime();
$mime->UnlockComponent("anything for 30-day trial");
		
$mime = $email->GetMimeObject();
$mime->SaveMime("e.eml");
		
traverseMime($mime,0);
		
# Prints this:

# multipart/mixed
# ----multipart/related
# --------multipart/alternative
# ------------text/plain
# ------------text/html
# --------image/gif
# --------image/gif
# --------image/gif
# --------image/gif
# --------image/gif
# --------image/gif
# --------image/jpeg
# --------image/gif
# --------image/gif
# --------image/gif
# --------image/gif
# --------image/gif
# ----image/gif
# ----text/plain






 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2007 Chilkat Software, Inc. All Rights Reserved.