" followed by a LF. After these 8 bytes
the archive entries are listed. The format of an entry header is as it follows:
START BYTE END BYTE NAME FORMAT LENGTH
0 15 File name ASCII 16
16 27 Modification timestamp Decimal 12
28 33 Owner ID Decimal 6
34 39 Group ID Decimal 6
40 47 File mode Octal 8
48 57 File size (bytes) Decimal 10
58 59 File magic \140\012 2
This specifies that an ar archive entry header contains 60 bytes.
Due to the limitation of the file name length to 16 bytes GNU and
BSD has their own variants of this format. Currently Commons
Compress can read but not write the GNU variant. It fully supports
the BSD variant.
- See Also:
- ar man page
Constructor Summary |
ArArchiveEntry(File inputFile,
String entryName)
Create a new instance using the attributes of the given file |
ArArchiveEntry(String name,
long length)
Create a new instance using a couple of default values. |
ArArchiveEntry(String name,
long length,
int userId,
int groupId,
int mode,
long lastModified)
Create a new instance. |
HEADER
public static final String HEADER
- The header for each entry
- See Also:
- Constant Field Values
TRAILER
public static final String TRAILER
- The trailer for each entry
- See Also:
- Constant Field Values
ArArchiveEntry
public ArArchiveEntry(String name,
long length)
- Create a new instance using a couple of default values.
Sets userId and groupId to 0, the octal file mode to 644 and
the last modified time to the current time.
- Parameters:
name
- name of the entrylength
- length of the entry in bytes
ArArchiveEntry
public ArArchiveEntry(String name,
long length,
int userId,
int groupId,
int mode,
long lastModified)
- Create a new instance.
- Parameters:
name
- name of the entrylength
- length of the entry in bytesuserId
- numeric user idgroupId
- numeric group idmode
- file modelastModified
- last modified time in seconds since the epoch
ArArchiveEntry
public ArArchiveEntry(File inputFile,
String entryName)
- Create a new instance using the attributes of the given file
getSize
public long getSize()
- The (uncompressed) size of the entry. May be -1 (SIZE_UNKNOWN) if the size is unknown
- Specified by:
getSize
in interface ArchiveEntry
getName
public String getName()
- The name of the entry in the archive. May refer to a file or directory or other item
- Specified by:
getName
in interface ArchiveEntry
getUserId
public int getUserId()
getGroupId
public int getGroupId()
getMode
public int getMode()
getLastModified
public long getLastModified()
- Last modified time in seconds since the epoch.
getLastModifiedDate
public Date getLastModifiedDate()
- The last modified date of the entry.
- Specified by:
getLastModifiedDate
in interface ArchiveEntry
getLength
public long getLength()
isDirectory
public boolean isDirectory()
- True if the entry refers to a directory
- Specified by:
isDirectory
in interface ArchiveEntry
hashCode
public int hashCode()
-
- Overrides:
hashCode
in class Object
equals
public boolean equals(Object obj)
-
- Overrides:
equals
in class Object
Copyright © 2013 The Apache Software Foundation. All Rights Reserved.