Logged In: NO

new String(buffer) uses the platform's default encoding.
This will not help if your zipfile comes from a computer
with another default encoding. I think the current
treatment is more correct: do not assume any encoding, user
can add that later as appropriate:

byte[] buffer;
String encoding;
ZipEntry.name().getBytes(0, l, buffer, 0);
Strring yourFilename = new String(buffer, encoding);