クラス FixLengthData
java.lang.Object
org.opengion.fukurou.util.FixLengthData
FixLengthData.java は、固定長データを作成するための簡易クラスです。
データの項目(String[])を、それぞれの中で最大桁数にあわせて、スペース埋めします。
各項目間に、追加するスペース数は、setAddLength( int[] ) メソッドで、
各項目のタイプ(半角文字、全角混在、数字)の指定は、setType( int[] ) メソッド行います。
このクラスは同期処理は保障されていません。
- 変更履歴:
- 5.6.6.0 (2013/07/05) keys の整合性チェックを追加
- 導入されたバージョン:
- JDK5.0,
-
フィールドの概要
フィールド修飾子とタイプフィールド説明static final String
初期 ENCODE 名 "Windows-31J"static final int
項目タイプの定義変数:K:半角全角混在 2static final int
項目タイプの定義変数:X9:数字(前ゼロ) 3static final int
項目タイプの定義変数:S:数字(前空白) 1static final int
項目間空白配列の定義変数:T:タブ区切り -1static final int
項目間空白配列の定義変数:T:タブ区切り -2static final int
項目間空白配列の定義変数:T:タブ区切り -3static final int
項目間空白配列の定義変数:T:タブ区切り -4static final int
項目タイプの定義変数:X:半角文字 0 -
コンストラクタの概要
コンストラクタコンストラクタ説明FixLengthData
(int len) データの項目数を指定して、オブジェクトを構築します。FixLengthData
(int[] inAddLen, int[] inType) 項目間空白配列と各項目のタイプ配列を指定して、オブジェクトを構築します。 -
メソッドの概要
修飾子とタイプメソッド説明void
addAllListData
(String[][] inData) データの各項目に対応した配列データを、すべて設定します。void
addListData
(String... inData) データの各項目に対応した配列データを設定します。void
clear()
内部変数のデータと、最大値のキャッシュをクリアします。内部登録済みのすべてのデータを連結した StringBuilder を返します。getFixData
(int line) 指定の行に対する固定文字数に設定された文字列を返します。void
setAddLength
(int... inAddLen) データの項目に対応した、固定時の間に挿入する空白文字数を指定します。void
setType
(int... inType) データの各項目のタイプ(半角文字、数字)を指定します。
-
フィールド詳細
-
X1
項目タイプの定義変数:X:半角文字 0- 関連項目:
-
S1
項目タイプの定義変数:S:数字(前空白) 1- 関連項目:
-
K1
項目タイプの定義変数:K:半角全角混在 2- 関連項目:
-
S0
項目タイプの定義変数:X9:数字(前ゼロ) 3- 関連項目:
-
T1
項目間空白配列の定義変数:T:タブ区切り -1- 関連項目:
-
T2
項目間空白配列の定義変数:T:タブ区切り -2- 関連項目:
-
T3
項目間空白配列の定義変数:T:タブ区切り -3- 関連項目:
-
T4
項目間空白配列の定義変数:T:タブ区切り -4- 関連項目:
-
ENCODE
初期 ENCODE 名 "Windows-31J"- 関連項目:
-
-
コンストラクタの詳細
-
FixLengthData
データの項目数を指定して、オブジェクトを構築します。- パラメータ:
len
- データの項目数- 変更履歴:
- 5.6.6.0 (2013/07/05) addLen の代わりに、addSpc で管理します。
-
FixLengthData
項目間空白配列と各項目のタイプ配列を指定して、オブジェクトを構築します。 どちらも、int型配列なので、順番に注意してください。- パラメータ:
inAddLen
- データの項目間空白配列inType
- データの各項目のタイプ配列- 例外:
IllegalArgumentException
- 引数が null の場合- 関連項目:
- 変更履歴:
- 5.6.6.0 (2013/07/05) 新規追加
-
-
メソッドの詳細
-
setAddLength
データの項目に対応した、固定時の間に挿入する空白文字数を指定します。 初期値は、0 です。- パラメータ:
inAddLen
- データの項目間空白配列(可変長引数)- 例外:
IllegalArgumentException
- 引数のデータ件数が、コンストラクタで指定した数と異なる場合- 変更履歴:
- 5.6.6.0 (2013/07/05) addLen の代わりに、addSpc で管理します。
-
setType
データの各項目のタイプ(半角文字、数字)を指定します。 X:半角文字の場合は、データを前方に、余った分を後方にスペースを埋めます。 S:数字(前空白)の場合は、データを後方に、余った分を空白を前方に埋めます。 S0:数字(前ゼロ)の場合は、データを後方に、余った分をゼロを前方に埋めます。 K:半角全角混在の場合は、ENCODE(Windows-31J) で文字数を求めるとともに、X:半角文字と同様の処理を行います。 初期値は、X:半角文字 です。- パラメータ:
inType
- データの各項目のタイプ配列(可変長引数)- 例外:
IllegalArgumentException
- 引数のデータ件数が、コンストラクタで指定した数と異なる場合- 関連項目:
-
addListData
データの各項目に対応した配列データを設定します。 配列データを登録しながら、各項目の最大データ長をピックアップしていきます。- パラメータ:
inData
- データの各項目の配列(可変長引数)- 例外:
IllegalArgumentException
- 引数のデータ件数が、コンストラクタで指定した数と異なる場合
-
getFixData
指定の行に対する固定文字数に設定された文字列を返します。 引数の行番号は、addListData(String[])メソッドで登録された順番です。- パラメータ:
line
- 行番号(addListData で登録した順)- 戻り値:
- 固定文字数に設定された文字列
- 変更履歴:
- 5.6.6.0 (2013/07/05) addLen の代わりに、addSpc で管理します。, 8.5.5.1 (2024/02/29) switch文にアロー構文を使用
- このメソッドは、nullを返しません
-
addAllListData
データの各項目に対応した配列データを、すべて設定します。 ここでは、配列の配列型データを受け取り、内部的に、addListData( String[] )を 実行しています。 簡易的なメソッドです。- パラメータ:
inData
- データの各項目の配列データの配列- 例外:
IllegalArgumentException
- 引数のデータ件数が、コンストラクタで指定した数と異なる場合- 関連項目:
- 変更履歴:
- 5.6.6.0 (2013/07/05) 新規追加
-
getAllFixData
内部登録済みのすべてのデータを連結した StringBuilder を返します。 連結時には、改行コードを設定しています。- 戻り値:
- 固定文字数に設定されたStringBuilder
- 関連項目:
- 変更履歴:
- 5.6.6.0 (2013/07/05) getAllFixData( StringBuilder ) を使用するように内部処理を変更, 8.5.6.1 (2024/03/29) StringBuilder を直接返すように内部処理を書き換えます。
- このメソッドは、nullを返しません
-
clear
内部変数のデータと、最大値のキャッシュをクリアします。 それ以外の変数(size、addLength、type)は、設定時のまま残っています。
-