0

このコードを使用して、pdb Web サイトから fasta シーケンス ファイルをダウンロードしています。pdb id は文字列 protid です。

import java.io.*;
import java.net.URL;
import java.util.Scanner;

public class Trialoffile
{

    public static void main(String[] args){

        InputStream url;

        String protID="2ly4";


        try{


                url = new URL("http://www.rcsb.org/pdb/download/downloadFile.do?fileFormat=FASTA&compression=NO&structureId="+protID).openStream();
                Scanner fasta = new Scanner(url);

                BufferedWriter bw= new BufferedWriter(new FileWriter(protID+".txt", true));




                 //output file is prepared.

                while(fasta.hasNextLine()){

                bw.write(fasta.nextLine()+"\n");

                }
                }





        catch (Exception e)
        {
            System.err.println("File input error on:"+protID);
        }
    }

}

エラーは発生していませんが、書き込まれたファイルは 0 バイトです。同じサイトから別の形式の別のファイルをダウンロードしようとしましたが、問題はありませんでした。

4

3 に答える 3

0

完了したら、ライターをフラッシュして閉じることを忘れないでください。

bw.flush();
bw.close();
于 2013-01-21T16:16:46.207 に答える
0

最後にファイルを閉じてみてください。

 while(fasta.hasNextLine()){

      bw.write(fasta.nextLine()+"\n");

}
bw.close();
于 2013-01-21T16:17:01.697 に答える