LHAライブラリ

jp.gr.java_conf.turner.util.lha
クラス LhaEntry

java.lang.Object
  |
  +--jp.gr.java_conf.turner.util.lha.LhaEntry
すべての実装インタフェース:
java.lang.Cloneable, LhaConstants

public class LhaEntry
extends java.lang.Object
implements java.lang.Cloneable, LhaConstants

このクラスはLHAのファイルエントリ情報を表します。


インタフェース jp.gr.java_conf.turner.util.lha.LhaConstants から継承したフィールド
FA_ARCH, FA_DIREC, FA_HIDDEN, FA_LABEL, FA_RDONLY, FA_SYSTEM, METHOD_LH0, METHOD_LH1, METHOD_LH2, METHOD_LH3, METHOD_LH4, METHOD_LH5, METHOD_LH6, METHOD_LH7, METHOD_LZ4, METHOD_LZ5, METHOD_LZS, OSTYPE_95, OSTYPE_CPM, OSTYPE_FLEX, OSTYPE_GENERIC, OSTYPE_HUMAN, OSTYPE_MAC, OSTYPE_MSDOS, OSTYPE_NT, OSTYPE_OS2, OSTYPE_OS386, OSTYPE_OS68K, OSTYPE_OS9, OSTYPE_RUNSER, OSTYPE_TOWNSOS, OSTYPE_UNIX, OSTYPE_XOSK
 
コンストラクタの概要
LhaEntry()
          LhaEntryを生成します.
LhaEntry(LhaEntry e)
          すでにあるエントリと同名のエントリを生成します.
LhaEntry(java.lang.String name)
          指定した名前でLhaEntryオブジェクトを生成します.
 
メソッドの概要
 byte getAttribute()
          ファイル属性を返します(MS-DOS互換).
 java.lang.String getComment()
          ヘッダ内のコメントを取得します.
 long getCompressedSize()
          圧縮後のサイズを返します
 java.lang.String getCompressMethod()
          圧縮のメソッドを返します.(
 int getCRC()
          CRCの値を取得します.
 long getDate()
          最終更新時刻を返します
 java.lang.String getDir()
          ディレクトリパスがあれば取得します.
 byte[] getExtra()
          拡張情報があれば取得します.
 int getHeaderLevel()
          LHAのヘッダの形式を取得します.
 java.lang.String getName()
          エントリ名(ファイル名)を返します.
 char getOSType()
          OS情報を取得します.
 long getSize()
          圧縮前の本来のサイズを返します
 int hashCode()
          ハッシュ値を返します.
 boolean isDirectory()
          ディレクトリかどうかを表すフラグを取得.
 void setAttribute(byte attrib)
          ファイル属性を設定します(MS-DOS互換).
 void setComment(java.lang.String str)
          ヘッダ内にコメントを設定します.
 void setCompressedSize(long cmp_size)
          圧縮後のサイズをエントリに設定します
 void setCompressMethod(java.lang.String method)
          圧縮のメソッドをエントリに設定します.
 void setCRC(int crc)
          CRCの値を設定します.
 void setDate(long time)
          最終更新時刻を設定します
 void setDir(java.lang.String str)
          ディレクトリパスを設定します.
 void setExtra(byte[] extra)
          拡張情報を設定します.
 void setOSType(char os)
          OS情報を設定します.
 void setSize(long org_size)
          圧縮前の本来のサイズをエントリに設定します
 java.lang.String toString()
          エントリ名(ファイル名)を返します.
 
クラス java.lang.Object から継承したメソッド
equals, getClass, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

LhaEntry

public LhaEntry()
LhaEntryを生成します.

LhaEntry

public LhaEntry(LhaEntry e)
すでにあるエントリと同名のエントリを生成します.
パラメータ:
e - LhaEntryオブジェクト

LhaEntry

public LhaEntry(java.lang.String name)
指定した名前でLhaEntryオブジェクトを生成します.
パラメータ:
name - エントリ名(ファイル名)
例外:
NullPointerException - エントリ名がnullのとき
java.lang.IllegalArgumentException - エントリ名が長すぎ(最長0xFFFE)
メソッドの詳細

getAttribute

public byte getAttribute()
ファイル属性を返します(MS-DOS互換). 関連項目に挙げた定数のビットごとの論理和をとった結果が返されます.

MS-DOS以外で作成されたアーカイブの場合、このフィールドの値は 正しくファイル属性を反映していないことがあります.

関連項目:
LhaConstants.FA_RDONLY, LhaConstants.FA_HIDDEN, LhaConstants.FA_SYSTEM, LhaConstants.FA_LABEL, LhaConstants.FA_DIREC, LhaConstants.FA_ARCH

getComment

public java.lang.String getComment()
ヘッダ内のコメントを取得します.
戻り値:
コメント

getCompressedSize

public long getCompressedSize()
圧縮後のサイズを返します
戻り値:
圧縮後のサイズ

getCompressMethod

public java.lang.String getCompressMethod()
圧縮のメソッドを返します.("-lh0-", "-lh5-", 等)
戻り値:
圧縮メソッド
関連項目:
LhaConstants.METHOD_LH0, LhaConstants.METHOD_LH1, LhaConstants.METHOD_LH2, LhaConstants.METHOD_LH3, LhaConstants.METHOD_LH4, LhaConstants.METHOD_LH5, LhaConstants.METHOD_LH6, LhaConstants.METHOD_LH7, LhaConstants.METHOD_LZS, LhaConstants.METHOD_LZ4, LhaConstants.METHOD_LZ5

getCRC

public int getCRC()
CRCの値を取得します.
戻り値:
crc16

getDate

public long getDate()
最終更新時刻を返します
戻り値:
1970 年 1 月 1 日 00:00:00 からのミリ秒で表した最終更新時刻

getDir

public java.lang.String getDir()
ディレクトリパスがあれば取得します.
戻り値:
ディレクトリパス

getExtra

public byte[] getExtra()
拡張情報があれば取得します.
戻り値:
拡張情報またはnull

getHeaderLevel

public int getHeaderLevel()
LHAのヘッダの形式を取得します.

0:LHArcで使われていたヘッダ(ファイル名の長さ等に制限あり)
1:0と互換性を保ちつつ拡張(Lharcでもファイル一覧だけは見れる)
2:1,0との互換性なし.

戻り値:
LHAエントリのヘッダの形式

getName

public java.lang.String getName()
エントリ名(ファイル名)を返します.
ディレクトリは含みません.
戻り値:
エントリ名(ファイル名)

getOSType

public char getOSType()
OS情報を取得します. 関連項目の定数以外の値も設定されている可能性は有ります.
戻り値:
OS情報
関連項目:
LhaConstants.OSTYPE_MSDOS, LhaConstants.OSTYPE_OS2, LhaConstants.OSTYPE_OS9, LhaConstants.OSTYPE_OS68K, LhaConstants.OSTYPE_OS386, LhaConstants.OSTYPE_HUMAN, LhaConstants.OSTYPE_UNIX, LhaConstants.OSTYPE_CPM, LhaConstants.OSTYPE_FLEX, LhaConstants.OSTYPE_MAC, LhaConstants.OSTYPE_RUNSER, LhaConstants.OSTYPE_NT, LhaConstants.OSTYPE_95, LhaConstants.OSTYPE_TOWNSOS, LhaConstants.OSTYPE_XOSK, LhaConstants.OSTYPE_GENERIC

getSize

public long getSize()
圧縮前の本来のサイズを返します
戻り値:
オリジナルのサイズ

hashCode

public int hashCode()
ハッシュ値を返します.
オーバーライド:
クラス java.lang.Object 内の hashCode
戻り値:
このエントリのハッシュ値

isDirectory

public boolean isDirectory()
ディレクトリかどうかを表すフラグを取得.
戻り値:
ディレクトリを表すエントリのときはtrue.

setAttribute

public void setAttribute(byte attrib)
ファイル属性を設定します(MS-DOS互換). 関連項目に挙げた定数を任意の組み合わせでビットごとの論理和とり、 その結果を引数に渡します.

パラメータ:
attrib - ファイル属性
関連項目:
LhaConstants.FA_RDONLY, LhaConstants.FA_HIDDEN, LhaConstants.FA_SYSTEM, LhaConstants.FA_DIREC, LhaConstants.FA_ARCH

setComment

public void setComment(java.lang.String str)
ヘッダ内にコメントを設定します.
パラメータ:
str - コメント

setCompressedSize

public void setCompressedSize(long cmp_size)
圧縮後のサイズをエントリに設定します
パラメータ:
cmp_size - 圧縮後のサイズ

setCompressMethod

public void setCompressMethod(java.lang.String method)
圧縮のメソッドをエントリに設定します.
パラメータ:
method - 圧縮メソッド
関連項目:
LhaConstants.METHOD_LH0, LhaConstants.METHOD_LH1, LhaConstants.METHOD_LH2, LhaConstants.METHOD_LH3, LhaConstants.METHOD_LH4, LhaConstants.METHOD_LH5, LhaConstants.METHOD_LH6, LhaConstants.METHOD_LH7, LhaConstants.METHOD_LZS, LhaConstants.METHOD_LZ4, LhaConstants.METHOD_LZ5

setCRC

public void setCRC(int crc)
CRCの値を設定します.
パラメータ:
crc - crc16

setDate

public void setDate(long time)
最終更新時刻を設定します
パラメータ:
time - 1970 年 1 月 1 日 00:00:00 からのミリ秒で表した最終更新時刻

setDir

public void setDir(java.lang.String str)
ディレクトリパスを設定します.
パラメータ:
str - ディレクトリパス

setExtra

public void setExtra(byte[] extra)
拡張情報を設定します.
パラメータ:
extra - 拡張情報

setOSType

public void setOSType(char os)
OS情報を設定します.
パラメータ:
os - OS情報
関連項目:
LhaConstants.OSTYPE_MSDOS, LhaConstants.OSTYPE_OS2, LhaConstants.OSTYPE_OS9, LhaConstants.OSTYPE_OS68K, LhaConstants.OSTYPE_OS386, LhaConstants.OSTYPE_HUMAN, LhaConstants.OSTYPE_UNIX, LhaConstants.OSTYPE_CPM, LhaConstants.OSTYPE_FLEX, LhaConstants.OSTYPE_MAC, LhaConstants.OSTYPE_RUNSER, LhaConstants.OSTYPE_NT, LhaConstants.OSTYPE_95, LhaConstants.OSTYPE_TOWNSOS, LhaConstants.OSTYPE_XOSK, LhaConstants.OSTYPE_GENERIC

setSize

public void setSize(long org_size)
圧縮前の本来のサイズをエントリに設定します
パラメータ:
org_size - オリジナルのサイズ

toString

public java.lang.String toString()
エントリ名(ファイル名)を返します.
ディレクトリは含みません.
オーバーライド:
クラス java.lang.Object 内の toString
戻り値:
エントリ名(ファイル名)

LHAライブラリ