private static void ftpStuff() { try { FTPClient ftp = new FTPClient(); ftp.connect("ftp.ncbi.nih.gov"); System.out.println(ftp.getReplyString()); ftp.login("anonymous", "*****@*****.**"); System.out.println("before list files..."); // ftp.li FTPFile[] files = ftp.listFiles(BASE_FOLDER); System.out.println(files.length); for (FTPFile file : files) { if (file.getName().endsWith(".gbff.gz")) { StringWriter writer = null; String charset = "ASCII"; GZIPInputStream inputStream = new GZIPInputStream(ftp.retrieveFileStream(BASE_FOLDER + "/" + file.getName())); System.out.println("ftp.getControlEncoding() = " + ftp.getControlEncoding()); Reader decoder = new InputStreamReader(inputStream, charset); BufferedReader buffered = new BufferedReader(decoder); String line = null; while ((line = buffered.readLine()) != null) { System.out.println("line = " + line); } System.exit(0); } } } catch (Exception ex) { Logger.getLogger(ImportGenBank.class.getName()).log(Level.SEVERE, null, ex); } }