Как я понимаю, вы хотите загрузить первые 20 предметов в первый звонок. Во втором звонке вы хотите загрузить 20–40-е предметы, и все будет так.
FTPFile[] files = ftpClient.listFiles();
этот метод выводит список всех элементов FTP. Таким образом, вы должны выбрать элементы, которые вы хотите скачать.
Мой совет, вы можете вызвать функцию, как;
public static String read(String host, String userName, String password,String ftpDirectory,String downloadDir, int index) {
...
for (int i = index; i<index+20; i++) {
FTPFile file = files[index];//you have the file
Вы можете передать значения индекса, например, 0,20,40,60,80;
for(int i = 0;i<5;i++){
read(userName,password,ftpDirectory,downloadDir,i*20);
}