org.opengion.fukurou.model

## クラス ExcelStyleFormat

- java.lang.Object
- - org.opengion.fukurou.model.ExcelStyleFormat

-     public final class ExcelStyleFormat
      extends Object

  POI による、Excel(xlsx)の読み取りクラスです。 xlsx形式のEXCELを、イベント方式でテキストデータを読み取ります。 このクラスでは、XSSF(.xlsx)形式のファイルを、TableModelHelper を介したイベントで読み取ります。 TableModelHelperイベントは、openGion形式のファイル読み取りに準拠した方法をサポートします。 ※ openGion形式のEXCELファイルとは、#NAME 列に、カラム名があり、#で始まる レコードは、コメントとして判断し、読み飛ばす処理の事です。
  変更履歴:

    6.0.3.0 (2014/11/13) 新規作成
    6.2.0.0 (2015/02/27) パッケージ変更(util → model),クラス名変更(ExcelReader_XSSF → EventReader_XLSX)

  機能分類
    ファイル入力
  バージョン
    6.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK7.0,

- - ### コンストラクタの概要

    コンストラクタ
    コンストラクタと説明
    `ExcelStyleFormat()` XSL系 コンストラクター XSL 処理では、HSSFListener のイベント処理のうち、NumberRecord の値取得に 必要な内部処理を、実行します。
    `ExcelStyleFormat(org.apache.poi.xssf.model.StylesTable styles)` XSLX系 コンストラクター StylesTable は、日付型をはじめとする、EXCELのスタイルのフォーマットを管理しています。

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `void` | `addExtFmtRec(org.apache.poi.hssf.record.ExtendedFormatRecord extFmtRec)` XSL系 ExtendedFormatRecordレコードの設定。
    `void` | `addFmtRec(org.apache.poi.hssf.record.FormatRecord fmtRec)` XSL系 FormatRecordレコードの設定。
    `static String` | `dateFormat(double val)` 日付型の値を、最適なフォーマットで変換して返します。
    `String` | `getNumberValue(org.apache.poi.hssf.record.NumberRecord numrec)` XSL系 Numberレコードから、日付データか、数値データかを判別して返します。
    `static String` | `getNumberValue(String fmtStr, double val)` フォーマット情報と値から、日付データか、数値データかを判別して返します。
    `String` | `getNumberValue(String cellStyleStr, String val)` XSLX系 セルスタイル文字列(スタイル番号)から、データフォーマットを取得します。

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### コンストラクタの詳細

    - #### ExcelStyleFormat

          public ExcelStyleFormat()

      XSL系 コンストラクター XSL 処理では、HSSFListener のイベント処理のうち、NumberRecord の値取得に 必要な内部処理を、実行します。 具体的には、ExtendedFormatRecord レコードから、FormatIndex と 並び順を 管理するMapと、FormatRecord レコードから、IndexCode と フォーマット文字列を 管理するMap を作成し、NumberRecordレコードの XFIndex から、ExtendedFormatRecord を 経由して、FormatRecord のフォーマット文字列 を取得し、日付フォーマットの場合は、 日付文字列に、それ以外は、数字文字列に変換する手助けを行います。
      変更履歴:

        6.2.0.0 (2015/02/27) 日付型の処理(DATE=0,DATETIME=1,TIME=2)

    - #### ExcelStyleFormat

          public ExcelStyleFormat(org.apache.poi.xssf.model.StylesTable styles)

      XSLX系 コンストラクター StylesTable は、日付型をはじめとする、EXCELのスタイルのフォーマットを管理しています。 XSLX形式のEXCELをパースする場合に、このコンストラクタを使用して、StylesTableオブジェクトを 設定します。
      パラメータ:
        `styles` - StylesTableオブジェクト
      変更履歴:

        6.2.0.0 (2015/02/27) 日付型の処理(DATE=0,DATETIME=1,TIME=2)

  - ### メソッドの詳細

    - #### addExtFmtRec

          public void addExtFmtRec(org.apache.poi.hssf.record.ExtendedFormatRecord extFmtRec)

      XSL系 ExtendedFormatRecordレコードの設定。
      パラメータ:
        `extFmtRec` - ExtendedFormatRecordレコード
      変更履歴:

        6.2.0.0 (2015/02/27) 日付型の処理(DATE=0,DATETIME=1,TIME=2)

    - #### addFmtRec

          public void addFmtRec(org.apache.poi.hssf.record.FormatRecord fmtRec)

      XSL系 FormatRecordレコードの設定。
      パラメータ:
        `fmtRec` - FormatRecordレコード
      変更履歴:

        6.2.0.0 (2015/02/27) 日付型の処理(DATE=0,DATETIME=1,TIME=2)

    - #### getNumberValue

          public String getNumberValue(String cellStyleStr,
                              String val)

      XSLX系 セルスタイル文字列(スタイル番号)から、データフォーマットを取得します。 StylesTable は、日付型をはじめとする、EXCELのスタイルのフォーマットを管理しています。 XSLX形式のEXCELのフォーマット文字列を取得する場合に、使用します。
      パラメータ:
        `cellStyleStr` - セルスタイル文字列(スタイル番号)
        `val` - endElement時の値文字列
      戻り値:
        日付データか、数値データかを判別した結果の文字列
      変更履歴:

        6.2.0.0 (2015/02/27) 日付型の処理(DATE=0,DATETIME=1,TIME=2)

    - #### getNumberValue

          public String getNumberValue(org.apache.poi.hssf.record.NumberRecord numrec)

      XSL系 Numberレコードから、日付データか、数値データかを判別して返します。 日付フォーマットの判定処理を #isDateFormat(String) で行い、日付の場合は、 各タイプ(日付、日時、時刻)に応じた、文字列を返します。 日付フォーマットでない場合は、数字化文字列を返します。
      パラメータ:
        `numrec` - NumberRecordレコード
      戻り値:
        日付データか、数値データかを判別した結果の文字列
      変更履歴:

        6.2.0.0 (2015/02/27) 日付型の処理(DATE=0,DATETIME=1,TIME=2)

    - #### getNumberValue

          public static String getNumberValue(String fmtStr,
                              double val)

      フォーマット情報と値から、日付データか、数値データかを判別して返します。 日付フォーマットの判定処理を #isDateFormat(String) で行い、日付の場合は、 各タイプ(日付、日時、時刻)に応じた、文字列を返します。 日付フォーマットでない場合は、数字文字列を返します。
      パラメータ:
        `fmtStr` - フォーマット情報
        `val` - Numberレコードのデータ
      戻り値:
        日付データか、数値データかを判別した結果の文字列
      変更履歴:

        6.2.0.0 (2015/02/27) 日付型の処理(DATE=0,DATETIME=1,TIME=2)
        6.3.1.0 (2015/06/28) 外部からも使えるように、static化します。

    - #### dateFormat

          public static String dateFormat(double val)

      日付型の値を、最適なフォーマットで変換して返します。 日付データは、(DATE=0,DATETIME=1,TIME=2) に分類できます。 DATE とは、日付のみの状態で、引数の val は、整数に変換できます。 その場合、"yyyyMMdd" フォーマットで変換します。 DATETIME とは、日付＋時刻なので、"yyyyMMddHHmmss" に変換します。 TIME は、日付情報を持っていないため、"HHmmss" に変換します。
      パラメータ:
        `val` - 日付型の値
      戻り値:
        日付型の変換結果
      変更履歴:

        6.2.0.0 (2015/02/27) 日付型の処理(DATE=0,DATETIME=1,TIME=2)
        6.3.1.0 (2015/06/28) 外部からも使えるように、static化します。

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.