Не знаю в чем дело, но при вызове getNextEntry получаю только один ZipEntry,а после него только null, то есть первый файл и поток к нему открывается, и он успешно записывается, но обратиться к остальным потокам не могу. Посмотрев решения я понял что многие решили через ArrayList, но поскольку я плохо понимаю потоки, хотелось бы понять в чем ошибка, чтобы разбираться в проблеме лучше. P.S. Попробовал использовать ArrayList-та же проблема. P.P.S. В итоге оказалось, что проблема в неправильной сортировке файлов, почему она не правильная, я не знаю, поскольку нет возможности сделать проверку. Ошибка доступа другого zipEntry как была так и осталась, причем, насколько я понял, она зависит отчасти от того, на какой машине запускается код. В чем всетаки причина этой ошибки пока не понятно, если у кого то будут идеи, буду рад услышать.