I have found 2 realated problems.
System:
biojava 1.10
Both Unix and DOS both running jdk1.3

If I read a file in genbank format that has DOS endings and try to iterate
through the SequenceIterator
    sI1 = SeqIOTools.readGenbank(br1);
    while(sI1.hasNext()){
        seq = sI1.nextSequence();
        .....
     }

It gets the one sequence that the file contains then the nextSequence method
chokes on the second pass.


Exception in thread "main" java.io.IOException: Premature end of
stream for GENBANK
        at
org.biojava.bio.seq.io.GenbankFormat.readSequence(GenbankFormat.java:112)
        at
org.biojava.bio.seq.io.StreamReader.nextSequence(StreamReader.java:99)
rethrown as org.biojava.bio.BioException: Could not read sequence
        at
org.biojava.bio.seq.io.StreamReader.nextSequence(StreamReader.java:102)
        at GenbankTest.main(GenbankTest.java:39)


the same genbank file with Unix line endings has no problem. True on both
Unix and DOS

You might ask why I was doing this since the file only had one file in it.
Well I really wasn't, but StreamWriter does. This is where the problem
really comes in. StreamWriter wraps the nextSequence call in a try block
inside a while hasNext loop.

so passing a SequenceIterator that chokes in the middle as above to
StreamWriter is equivalent to:

        while (seqI.hasNext()){
           try{
                seq1 = seqI.nextSequence(); //choke here
           }catch (Exception

                System.out.println(e.getMessage());
           }
        }

OOOPS the try keeps hasNext from returning false -- this takes a good long
while on my machine.


Finally just wondering what the plans are for implementing writeSequence for
Genbank?

David



|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|   David Waring
|   Systems Programmer
|   University of Washington Genome Center
|   [EMAIL PROTECTED]
|   (206) 221-6902
|||||||||||||||||||||||||||||||||||||||||||||||||||||||

_______________________________________________
Biojava-l mailing list  -  [EMAIL PROTECTED]
http://biojava.org/mailman/listinfo/biojava-l

Reply via email to