jp.gr.java_conf.dangan.util.lha

Class CompressMethod


public class CompressMethod
extends Object

LHAの各種定数を定義する。
 -- revision history --
 $Log: CompressMethod.java,v $
 Revision 1.1  2002/12/08 00:00:00  dangan
 [change]
     クラス名を LhaConstants から CompressMethod へと変更。

 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [change]
     LhaUtil の connectExtractInputStream を connectDecoder として
     connectCompressOutputStream を connectEncoder として引き継ぐ。
     LhaUtil の CompressMethodTo????????? を引き継ぐ。
 [maintanance]
     ソース整備
     タブ廃止
     ライセンス文の修正

 
Version:
$Revision: 1.1 $
Author:
$Author: dangan $

Field Summary

static String
LH0
圧縮形式を示す文字列。 LH0 は 無圧縮を示す "-lh0-" である。
static String
LH1
圧縮形式を示す文字列。 LH1 は前段に 4キロバイトの辞書、最大一致長60バイトの LZSS法、後段に 適応的ハフマン法を使用することを意味する "-lh1-" である。
static String
LH2
圧縮形式を示す文字列。 LH2 は前段に 8キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 適応的ハフマン法を使用することを意味する "-lh2-" である。 この圧縮法は LH1 から LH5 への改良途中で試験的に 使われたが、現在は使用されていない。
static String
LH3
圧縮形式を示す文字列。 LH3 は前段に 8キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh3-" である。 この圧縮法は LH1 から LH5 への改良途中で試験的に 使われたが、現在は使用されていない。
static String
LH4
圧縮形式を示す文字列。 LH4 は前段に 4キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh4-" である。 この圧縮法は 1990年代前半の非力なマシン上で圧縮を行う際、 LH5圧縮を行うだけのシステム資源を得られなかった時に使わ れたが、現在は殆ど使用されていない。
static String
LH5
圧縮形式を示す文字列。 LH5 は前段に 8キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh5-" である。 現在、LHAで標準で使用される圧縮法である。
static String
LH6
圧縮形式を示す文字列。 LH6 は前段に 32キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh6-" である。 "-lh6-" という文字列は LH7 の圧縮法の実験に使用されて いた。そのため、LHAの実験版が作成した書庫には "-lh6-" の文字列を使用しながら LH7 形式で圧縮されているものが 存在するらしい。 また この圧縮法は開発されてから 10年近く経つが未だに 公の場所に この圧縮法で圧縮された書庫は登録しないこと が望ましいとされている。
static String
LH7
圧縮形式を示す文字列。 LH7 は前段に 64キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh7-" である。 また この圧縮法は開発されてから 10年近く経つが未だに 公の場所に この圧縮法で圧縮された書庫は登録しないこと が望ましいとされている。
static String
LHD
圧縮形式を示す文字列。 LHD は無圧縮で、ディレクトリを格納していることを示す "-lhd-" である。
static String
LZ4
圧縮形式を示す文字列。 LZ4 は 無圧縮を示す "-lz4-" である。 "-lz4-" は LHAが作成される前にメジャーであった Larc の形式であり、当時の互換性に配慮して定義さ れた。現在は殆ど使用されていない。
static String
LZ5
圧縮形式を示す文字列。 LZ5 は 4キロバイトの辞書、最大一致長17バイトの LZSS法を使用することを示す "-lz5-" である。 "-lz5-" は LHAが作成される前にメジャーであった Larc の形式であり、当時の互換性に配慮して定義さ れた。現在は殆ど使用されていない。
static String
LZS
圧縮形式を示す文字列。 LZS は 2キロバイトの辞書、最大一致長17バイトの LZSS法を使用することを示す "-lzs-" である。 "-lzs-" は LHAが作成される前にメジャーであった Larc の形式であり、当時の互換性に配慮して定義さ れた。現在は殆ど使用されていない。

Method Summary

static InputStream
connectDecoder(InputStream in, String method, Properties property, long length)
property に設定された生成式を利用して in から method の圧縮法で圧縮されたデータを解凍し 供給する入力ストリームを構築する。
static OutputStream
connectEncoder(OutputStream out, String method, Properties property)
property に設定された生成式を利用して method の圧縮法でデータを圧縮し、outに出力するストリームを構築する。
static int
toDictionarySize(String method)
圧縮法識別子から 辞書サイズを得る。
static int
toMaxMatch(String method)
圧縮法識別子から 最大一致長を得る。
static int
toThreshold(String method)
圧縮法識別子から 圧縮/非圧縮の閾値を得る。

Field Details

LH0

public static final String LH0
圧縮形式を示す文字列。 LH0 は 無圧縮を示す "-lh0-" である。

LH1

public static final String LH1
圧縮形式を示す文字列。 LH1 は前段に 4キロバイトの辞書、最大一致長60バイトの LZSS法、後段に 適応的ハフマン法を使用することを意味する "-lh1-" である。

LH2

public static final String LH2
圧縮形式を示す文字列。 LH2 は前段に 8キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 適応的ハフマン法を使用することを意味する "-lh2-" である。 この圧縮法は LH1 から LH5 への改良途中で試験的に 使われたが、現在は使用されていない。

LH3

public static final String LH3
圧縮形式を示す文字列。 LH3 は前段に 8キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh3-" である。 この圧縮法は LH1 から LH5 への改良途中で試験的に 使われたが、現在は使用されていない。

LH4

public static final String LH4
圧縮形式を示す文字列。 LH4 は前段に 4キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh4-" である。 この圧縮法は 1990年代前半の非力なマシン上で圧縮を行う際、 LH5圧縮を行うだけのシステム資源を得られなかった時に使わ れたが、現在は殆ど使用されていない。

LH5

public static final String LH5
圧縮形式を示す文字列。 LH5 は前段に 8キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh5-" である。 現在、LHAで標準で使用される圧縮法である。

LH6

public static final String LH6
圧縮形式を示す文字列。 LH6 は前段に 32キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh6-" である。 "-lh6-" という文字列は LH7 の圧縮法の実験に使用されて いた。そのため、LHAの実験版が作成した書庫には "-lh6-" の文字列を使用しながら LH7 形式で圧縮されているものが 存在するらしい。 また この圧縮法は開発されてから 10年近く経つが未だに 公の場所に この圧縮法で圧縮された書庫は登録しないこと が望ましいとされている。

LH7

public static final String LH7
圧縮形式を示す文字列。 LH7 は前段に 64キロバイトの辞書、最大一致長256バイトの LZSS法、後段に 静的ハフマン法を使用することを意味する "-lh7-" である。 また この圧縮法は開発されてから 10年近く経つが未だに 公の場所に この圧縮法で圧縮された書庫は登録しないこと が望ましいとされている。

LHD

public static final String LHD
圧縮形式を示す文字列。 LHD は無圧縮で、ディレクトリを格納していることを示す "-lhd-" である。

LZ4

public static final String LZ4
圧縮形式を示す文字列。 LZ4 は 無圧縮を示す "-lz4-" である。 "-lz4-" は LHAが作成される前にメジャーであった Larc の形式であり、当時の互換性に配慮して定義さ れた。現在は殆ど使用されていない。

LZ5

public static final String LZ5
圧縮形式を示す文字列。 LZ5 は 4キロバイトの辞書、最大一致長17バイトの LZSS法を使用することを示す "-lz5-" である。 "-lz5-" は LHAが作成される前にメジャーであった Larc の形式であり、当時の互換性に配慮して定義さ れた。現在は殆ど使用されていない。

LZS

public static final String LZS
圧縮形式を示す文字列。 LZS は 2キロバイトの辞書、最大一致長17バイトの LZSS法を使用することを示す "-lzs-" である。 "-lzs-" は LHAが作成される前にメジャーであった Larc の形式であり、当時の互換性に配慮して定義さ れた。現在は殆ど使用されていない。

Method Details

connectDecoder

public static InputStream connectDecoder(InputStream in,
                                         String method,
                                         Properties property,
                                         long length)
property に設定された生成式を利用して in から method の圧縮法で圧縮されたデータを解凍し 供給する入力ストリームを構築する。
Parameters:
in - 圧縮データを供給するストリーム
method - 圧縮法識別子
property - 各圧縮形式に対応した復号器の生成式等が含まれるプロパティ
Returns:
in から method の圧縮法で圧縮されたデータを解凍し 供給する入力ストリームを構築する。

connectEncoder

public static OutputStream connectEncoder(OutputStream out,
                                          String method,
                                          Properties property)
property に設定された生成式を利用して method の圧縮法でデータを圧縮し、outに出力するストリームを構築する。
Parameters:
out - 圧縮データ出力先のストリーム
method - 圧縮法識別子
property - 各圧縮形式に対応した符号器の生成式等が含まれるプロパティ
Returns:
method の圧縮法でデータを圧縮し、outに出力するストリーム

toDictionarySize

public static int toDictionarySize(String method)
圧縮法識別子から 辞書サイズを得る。
Parameters:
method - 圧縮法識別子
Returns:
辞書サイズ

toMaxMatch

public static int toMaxMatch(String method)
圧縮法識別子から 最大一致長を得る。
Parameters:
method - 圧縮法識別子
Returns:
最大一致長

toThreshold

public static int toThreshold(String method)
圧縮法識別子から 圧縮/非圧縮の閾値を得る。
Parameters:
method - 圧縮法識別子
Returns:
圧縮/非圧縮

When you found typographical errors or omissions, Please mail to cqw10305@nifty.com
The company name and product name which are used in this document, it is the trademark or registered trademark of each company generally.
Copyright © 2001-2002 Michel Ishizuka. All Rights Reserved.