The documentation for FileInputStream is very clear, if you read it:
If the named file does not exist, is a directory rather than a regular file, or for some other reason cannot be opened for reading then a FileNotFoundException is thrown.
So, either make sure that Allpaths.txt is in the classpath for your application, or specify the full path to its location. Your while loop is wrong. You close the input stream during the first iteration through the loop, immediately after writing to the deflater. So, the second time you try to read from it, it will fail because it is no longer open.