Mail::Addressbook::Convert::Eudora - convert to and from Eudora addressbooks


use strict;

use Eudora;

my $Eudora = new Eudora();

my $EudoraInFile ="eudoraSample.txt"; # name of the file containing the Eudora data

# Convert Eudora to Standard Intermediate format

# see documentation for details on format.

my $raIntermediate = $Eudora->scan(\$EudoraInFile);

# This will also work

#my @EudoraInArray = @arrayContainingTheEudoraData;

#my $raIntermediate = $Eudora->scan(\@EudoraInArray);

# Convert back to Eudora

my $raEudorafOut = $Eudora->output($raIntermediate);

print join "", @$raIntermediate;

print "\n\n\n\n";

print join "", @$raEudorafOut ;


Perl, version 5.001 or higher

Carp Text::ParseWords


This module is meant to be used as part of the Mail::Addressbook::Convert distribution.

It can convert a Eudoraaddressbook to a Standard Intermediate format(STF) and a STF to Eudora As part of the larger distribution, it will allow conversion between Eudora and many other formats.

To use to convert between Eudora and Ldif as an example, you would do the following

use Mail::Addressbook::Convert::Ldif;

use Mail::Addressbook::Convert::Eudora;

my $Ldif = new Mail::Addressbook::Convert::Ldif();

my $Eudora = new Mail::Addressbook::Convert::Eudora();

my $EudoraInFile ="eudoraSample.txt"; # name of the file containing the Eudora data

my $raIntermediate = $Ldif->scan(\$EudoraInFile);

my $raLdif = $Ldif->output($raIntermediate); # reference to an array containing a Ldif addressbook


Standard Intermediate Format(STF) :

                        The addressbook format that is used as an intermediate
                        between conversions.  It is rfc822 compliant and can
                        be used directly as a Eudora addressbook.  Do not use
                        a Eudora addressbook as an STF. Some versions of 
                        Eudora use a format, that while RFC822 compliant, will
                        not work as an STF. Run the Eudora addressbook
                        through $Eudora->scan()

Eudora addressbook: A Eudora addressbook. The input Eudora address file is "nndbase.txt" in the Eudora directory. for Windows users "Eudora Nicknames" in the System Folder:Eudora Folder for Mac users



no arguments needed.


Input : a reference to an array containing a Eudora addressbook or a reference to a scalar containing the file name with the Eudora Addressbook.

Returns: a reference to a STF ( see above).


Input: a reference to a STF ( see above).

Returns : a reference to an array containing a Eudora addressbook.


This only converts email address, aliases, and mailing lists. Phone numbers, postal addresses and other such data are not converted.


I derived the format by visually inspecting examples, not by reading a document.


This code is derived from the code used on . The site has been up since 1996 The site gets about 8000 unique visitors a month, many of whom make addressbook conversions. The code has been well tested.





Original Version 2001-Sept-09


Copyright (c) 2001 Joe Davidson. All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of the Perl Artistic License (see or the GPL copyleft license (


Mail::Addressbook::Convert was written by Joe Davidson <> in 2001.