@Override public long getLastModified() { long time = zipEntry.getTime(); if (time < 0) { return 0; } return time; } }
@Override public long lastModified() { return entry.getTime(); }
try{ ApplicationInfo ai = getPackageManager().getApplicationInfo(getPackageName(), 0); ZipFile zf = new ZipFile(ai.sourceDir); ZipEntry ze = zf.getEntry("classes.dex"); long time = ze.getTime(); String s = SimpleDateFormat.getInstance().format(new java.util.Date(time)); zf.close(); }catch(Exception e){ }
public void setTime(ZipEntry newInstance, ZipEntry oldInstance) { long time = oldInstance.getTime(); if (time != -1) { newInstance.setTime(time); } }
/** * Description of the Method */ protected void expandFile( final File srcF, final File dir ) throws Exception { ZipInputStream zis = null; try { // code from WarExpand zis = new ZipInputStream( new FileInputStream( srcF ) ); for ( ZipEntry ze = zis.getNextEntry(); ze != null; ze = zis.getNextEntry() ) { extractFile( srcF, dir, zis, ze.getName(), new Date( ze.getTime() ), ze.isDirectory() ); } // log("expand complete", Project.MSG_VERBOSE); zis.close(); zis = null; } catch ( IOException ioe ) { throw new Exception( "Error while expanding " + srcF.getPath(), ioe ); } finally { IOUtil.close( zis ); } }
private void scanForNextEntry() { while (nextEntry == null) { if (!zipEntryEnumerator.hasMoreElements()) { return; } ZipEntry zipEntry = zipEntryEnumerator.nextElement(); if (!zipEntry.isDirectory()) { addLastModifiedTime(zipEntry.getTime()); nextEntry = new ZipFileCodeBaseEntry(ZipFileCodeBase.this, zipEntry); break; } } } };
ZipInputStreamCodeBaseEntry build(ZipInputStream zis, ZipEntry ze) throws IOException { long sz = ze.getSize(); ByteArrayOutputStream out; if (sz < 0 || sz > Integer.MAX_VALUE) { out = new ByteArrayOutputStream(); } else { out = new ByteArrayOutputStream((int) sz); } IO.copy(zis, out); byte[] bytes = out.toByteArray(); addLastModifiedTime(ze.getTime()); return new ZipInputStreamCodeBaseEntry(this, ze, bytes); }
IOUtils.copyBytes(zip, out, BUFFER_SIZE); if (!file.setLastModified(entry.getTime())) { numOfFailedLastModifiedSet++;
public boolean selectCompilationUnit(String canonicalName) throws IOException { ZipFile zipFile = null; boolean success = false; try{ zipFile = new ZipFile(file); String name = canonicalName.replace('.', '/'); // ZipFiles always use '/' as separator name = name + fileSuffix(); if(set.contains(name)) { ZipEntry zipEntry = zipFile.getEntry(name); if(zipEntry != null && !zipEntry.isDirectory()) { is = new ZipEntryInputStreamWrapper(zipFile,zipEntry); age = zipEntry.getTime(); pathName = zipFile.getName(); relativeName = name + fileSuffix(); fullName = canonicalName; success = true; } } } finally { if(zipFile != null && !success) zipFile.close(); } return success; }
byte data[] = out.toByteArray(); contents.put(name, data); lastModified.put(name, e.getTime());
long timestamp = ze.getTime(); Long oldTimestamp = copied.get(name); if (oldTimestamp == null) {
public ZipEntry newZipEntry(ZipEntry ze) { ZipEntry ze2 = new ZipEntry(ze.getName()); ze2.setComment(ze.getComment()); ze2.setTime(ze.getTime()); ze2.setExtra(ze.getExtra()); return ze2; }
@Test public void shouldPreserveFileTimestampWhileGeneratingTheZipFile() throws Exception { File file = temporaryFolder.newFile("foo.txt"); file.setLastModified(1297989100000L); // Set this to any date in the past which is greater than the epoch File zip = zipUtil.zip(file, temporaryFolder.newFile("foo.zip"), Deflater.DEFAULT_COMPRESSION); ZipFile actualZip = new ZipFile(zip.getAbsolutePath()); ZipEntry entry = actualZip.getEntry(file.getName()); assertThat(entry.getTime(), is(file.lastModified())); }
/** * Transforms the zip entry given as an input stream and ZipEntry metadata. * The result is written to a ZipOutputStream * * @param in input stream of the entry contents * @param zipEntry zip entry metadata * @param out output stream to write transformed entry * * @throws IOException if anything goes wrong */ public void transform(InputStream in, ZipEntry zipEntry, ZipOutputStream out) throws IOException { byte[] bytes = IOUtils.toByteArray(in); bytes = transform(zipEntry, bytes); ByteSource source; if (preserveTimestamps()) { source = new ByteSource(zipEntry.getName(), bytes, zipEntry.getTime()); } else { source = new ByteSource(zipEntry.getName(), bytes); } ZipEntrySourceZipEntryTransformer.addEntry(source, out); }
newZipEntry.setTime(ze.getTime());//LastModifiedTime());
/** * Copy entry with another name. * * @param original - zipEntry to copy * @param newName - new entry name, optional, if null, ogirinal's entry * @return copy of the original entry, but with the given name */ static ZipEntry copy(ZipEntry original, String newName) { ZipEntry copy = new ZipEntry(newName == null ? original.getName() : newName); if (original.getCrc() != -1) { copy.setCrc(original.getCrc()); } if (original.getMethod() != -1) { copy.setMethod(original.getMethod()); } if (original.getSize() >= 0) { copy.setSize(original.getSize()); } if (original.getExtra() != null) { copy.setExtra(original.getExtra()); } copy.setComment(original.getComment()); copy.setTime(original.getTime()); return copy; }
private static ArrayMemory zipEntryToArray(ZipEntry zipEntry) { final ArrayMemory result = new ArrayMemory(); result.refOfIndex("name").assign(zipEntry.getName()); result.refOfIndex("crc").assign(zipEntry.getCrc()); result.refOfIndex("size").assign(zipEntry.getSize()); result.refOfIndex("compressedSize").assign(zipEntry.getCompressedSize()); result.refOfIndex("time").assign(zipEntry.getTime()); result.refOfIndex("method").assign(zipEntry.getMethod()); result.refOfIndex("comment").assign(zipEntry.getComment()); result.refOfIndex("directory").assign(zipEntry.isDirectory()); return result; }
if (currentEntry.getTime() == -1) { currentEntry.setTime(System.currentTimeMillis());