Class ByteStreamDataString

Direct Known Subclasses:
DoubleByteCharacterString, SingleByteCharacterString

@Published(tag="architect") public class ByteStreamDataString extends ByteStreamDataSupport<String>
バイトストリームで入出力する文字列のデータタイプ。

本クラスは入力時にパディング、出力時にトリムを行う。

本データタイプは、バイトデータをそのまま文字として読み込む。
通常、バイト長の異なる文字が混在するフィールドを扱う場合や、UTF-8のファイルを読み書きする場合、 全角文字のパディングに半角スペースを使用する場合に、本データタイプを使用する。

本クラスを使用する場合、パディング/トリム文字として指定できるのはシングルバイト文字のみである。
また、デフォルトではパディング/トリム文字として半角スペースを使用するが、個別にパディング/トリム文字を指定することもできる。

文字列のバイト長がシングルバイトで統一されているフィールドを読み書きする場合はSingleByteCharacterString、 ダブルバイトで統一されている場合はDoubleByteCharacterStringを使用すること。

  • Constructor Details

    • ByteStreamDataString

      public ByteStreamDataString()
  • Method Details

    • initialize

      public ByteStreamDataString initialize(Object... args)
      初期化処理を行う。
      Specified by:
      initialize in class DataType<String,byte[]>
      Parameters:
      args - データタイプのパラメータ
      Returns:
      初期化されたデータタイプ (通常はthisをリターンする)
    • convertOnRead

      public String convertOnRead(byte[] bytes)
      入力時に読み込んだデータを変換する。 この実装では、入力時に、引数のバイト配列を1バイト文字に変換して返却する。 また、変換の際に指定された文字でトリムを行う。デフォルトのトリム文字として半角スペースを使用する。 トリム後の文字列が空文字列かつ空文字列をnullに変換する設定がされている場合はnullを返却する。
      Specified by:
      convertOnRead in class DataType<String,byte[]>
      Parameters:
      bytes - フィールドの値データ
      Returns:
      変換後の値
    • convertOnWrite

      public byte[] convertOnWrite(Object data)
      出力時に書き込むデータの変換を行う。 この実装では、出力時に、引数のオブジェクト(文字列など)をバイト配列に変換して返却する。 また、変換の際に指定された文字でパディングを行う。デフォルトのパディング文字として半角スペースを使用する。
      Specified by:
      convertOnWrite in class DataType<String,byte[]>
      Parameters:
      data - 書き込みを行うデータ
      Returns:
      変換後の値
    • getPaddingStr

      protected String getPaddingStr()
      パディング/トリム処理で使用する文字列を返却する。 パディング/トリム文字列が指定されていない場合、デフォルトで半角スペースを使用する。
      Returns:
      パディング/トリム処理で使用する文字列
    • getDefaultPaddingStr

      protected String getDefaultPaddingStr()
      パディング/トリム処理で使用するデフォルトの文字を返却する。

      本メソッドをオーバーライドすることで、パディング/トリム処理で使用するデフォルトの文字列を変更できる。

      Returns:
      パディング/トリム処理で使用するデフォルトの文字列
    • getPaddingCharLength

      protected int getPaddingCharLength()
      パディング/トリム文字として許容するバイト長を返却する。

      本メソッドをオーバーライドすることで、パディング/トリム文字として許容するバイト長を変更できる。

      Returns:
      パディング/トリム文字として許容するバイト長
    • getPaddingBytes

      protected byte[] getPaddingBytes()
      パディングに使用する文字のバイト配列を返却する。
      Returns:
      パディングに使用するバイトデータ