The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Bio::AlignIO::fasta - fasta MSA Sequence input/output stream


Do not use this module directly. Use it via the Bio::AlignIO class.


This object can transform Bio::SimpleAlign objects to and from fasta flat files. This is for the fasta alignment format, not for the FastA sequence analysis program. To process the alignments from FastA (FastX, FastN, FastP, tFastA, etc) use the Bio::SearchIO module.



Please direct usage questions or support issues to the mailing list:

rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible.

Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via the web:


Peter Schattner


The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _


 Title   : next_aln
 Usage   : $aln = $stream->next_aln
 Function: returns the next alignment in the stream.
 Returns : Bio::Align::AlignI object - returns 0 on end of file
            or on error
 Args    : -width => optional argument to specify the width sequence
           will be written (60 chars by default)

See Bio::Align::AlignI


 Title   : write_aln
 Usage   : $stream->write_aln(@aln)
 Function: writes the $aln object into the stream in fasta format
 Returns : 1 for success and 0 for error
 Args    : L<Bio::Align::AlignI> object

See Bio::Align::AlignI


 Title   : _get_len
 Usage   :
 Function: determine number of alphabetic chars
 Returns : integer
 Args    : sequence string


 Title   : width
 Usage   : $obj->width($newwidth)
           $width = $obj->width;
 Function: Get/set width of alignment
 Returns : integer value of width
 Args    : on set, new value (a scalar or undef, optional)