@Published(tag="architect") public class ByteStreamDataString extends ByteStreamDataSupport<java.lang.String>
本クラスは入力時にパディング、出力時にトリムを行う。
本データタイプは、バイトデータをそのまま文字として読み込む。
通常、バイト長の異なる文字が混在するフィールドを扱う場合や、UTF-8のファイルを読み書きする場合、
全角文字のパディングに半角スペースを使用する場合に、本データタイプを使用する。
本クラスを使用する場合、パディング/トリム文字として指定できるのはシングルバイト文字のみである。
また、デフォルトではパディング/トリム文字として半角スペースを使用するが、個別にパディング/トリム文字を指定することもできる。
文字列のバイト長がシングルバイトで統一されているフィールドを読み書きする場合はSingleByteCharacterString
、
ダブルバイトで統一されている場合はDoubleByteCharacterString
を使用すること。
convertEmptyToNull
Constructor and Description |
---|
ByteStreamDataString() |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
convertOnRead(byte[] bytes)
入力時に読み込んだデータを変換する。
|
byte[] |
convertOnWrite(java.lang.Object data)
出力時に書き込むデータの変換を行う。
|
protected java.lang.String |
getDefaultPaddingStr()
パディング/トリム処理で使用するデフォルトの文字を返却する。
|
protected byte[] |
getPaddingBytes()
パディングに使用する文字のバイト配列を返却する。
|
protected int |
getPaddingCharLength()
パディング/トリム文字として許容するバイト長を返却する。
本メソッドをオーバーライドすることで、パディング/トリム文字として許容するバイト長を変更できる。
|
protected java.lang.String |
getPaddingStr()
パディング/トリム処理で使用する文字列を返却する。
パディング/トリム文字列が指定されていない場合、デフォルトで半角スペースを使用する。
|
ByteStreamDataString |
initialize(java.lang.Object... args)
初期化処理を行う。
|
getSize, setSize
getField, init, removePadding, setConvertEmptyToNull
public ByteStreamDataString initialize(java.lang.Object... args)
initialize
in class DataType<java.lang.String,byte[]>
args
- データタイプのパラメータpublic java.lang.String convertOnRead(byte[] bytes)
null
に変換する設定がされている場合はnull
を返却する。convertOnRead
in class DataType<java.lang.String,byte[]>
bytes
- フィールドの値データpublic byte[] convertOnWrite(java.lang.Object data)
convertOnWrite
in class DataType<java.lang.String,byte[]>
data
- 書き込みを行うデータprotected java.lang.String getPaddingStr()
protected java.lang.String getDefaultPaddingStr()
本メソッドをオーバーライドすることで、パディング/トリム処理で使用するデフォルトの文字列を変更できる。
protected int getPaddingCharLength()
protected byte[] getPaddingBytes()