パッケージ org.opengion.plugin.io
クラス TableWriter_CSV
java.lang.Object
org.opengion.hayabusa.io.AbstractTableWriter
org.opengion.plugin.io.TableWriter_Default
org.opengion.plugin.io.TableWriter_CSV
- すべての実装されたインタフェース:
TableWriter
- 直系の既知のサブクラス:
TableWriter_CSV2
,TableWriter_CSV3
,TableWriter_Data
,TableWriter_Data2
CSV形式ダブルクォートゼロカンマファイル(CSV)形式書き込みクラスです。
DefaultTableWriter を継承していますので、ラベル、名前、データの出力部のみ
オーバーライドして、可変長CSV形式ファイルの出力機能を実現しています。
[writeData]
区切り : CSV_SEPARATOR 固定
行番号 : quotation( 行番号 + 1 )
カラムデータ: 数字型でない場合の先頭が 0 の時は、『'』を追加して、quotation
: それ以外は、quotation( val )
- 変更履歴:
- 8.5.6.1 (2024/03/29) 継承で使えるように、一部修正します。
- 機能分類
- ファイル出力
- 導入されたバージョン:
- JDK21.0,
-
フィールドの概要
クラスから継承されたフィールド org.opengion.hayabusa.io.AbstractTableWriter
BUFFER_MIDDLE, clmNo, CR, dbColumn, dbType, isKeyLbl, NUMBER, numberOfColumns, STRING, table
インタフェースから継承されたフィールド org.opengion.hayabusa.io.TableWriter
CSV_SEPARATOR, TAB_SEPARATOR
-
コンストラクタの概要
コンストラクタ -
メソッドの概要
修飾子とタイプメソッド説明protected void
csvInit()
writeDBTable を実行する前の初期設定を行います。protected String
dataQuotation
(String val, int dtype) データを書き込む場合の区切り文字をセットします。protected String
numberQuotation
(int row) 先頭の行番号に対してのクオーテーション処理を行います。protected void
writeData
(DBTableModel table, PrintWriter writer) PrintWriter に DBTableModelのテーブル情報を書き込みます。void
writeDBTable
(PrintWriter writer) DBTableModel から データを作成して、PrintWriter に書き出します。クラスから継承されたメソッド org.opengion.plugin.io.TableWriter_Default
writeDBTable
クラスから継承されたメソッド org.opengion.hayabusa.io.AbstractTableWriter
checkParam, createDBColumn, getDBTableModel, getEncode, getHeaderSequence, getSeparator, isAppend, isDebug, isExcel, isUseNumber, isUseRenderer, quotation, quotation2, setAddTitleSheet, setAppend, setColumns, setDBTableModel, setDebug, setEncode, setFileBreakColumn, setFilename, setFontName, setFontPoint, setHeaderSequence, setHyperLinkColumn, setOmitNames, setPageBreakColumn, setParam, setRecalcSheetName, setRefFilename, setRefSheetName, setSeparator, setSheetName, setSheetOverwrite, setSkipRowCount, setUseActiveWorkbook, setUseAutoCellSize, setUseCellStyle, setUseNumber, setUseRenderer, writeClass, writeLabel, writeLabel2, writeName, writeSeparator, writeSize
-
コンストラクタの詳細
-
TableWriter_CSV
public TableWriter_CSV()デフォルトコンストラクター- 変更履歴:
- 6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
-
-
メソッドの詳細
-
writeDBTable
DBTableModel から データを作成して、PrintWriter に書き出します。- 定義:
writeDBTable
インタフェース内TableWriter
- オーバーライド:
writeDBTable
クラス内TableWriter_Default
- パラメータ:
writer
- PrintWriterオブジェクト- 変更履歴:
- 3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。, 3.5.4.3 (2004/01/05) 引数に PrintWriter を受け取るように変更します。, 8.5.6.1 (2024/03/29) setSeparator をcsvInit()で行います。
-
writeData
PrintWriter に DBTableModelのテーブル情報を書き込みます。 このクラスでは、データを ダブルコーテーション(")で囲みます。 PrintWriter に DBTableModelのテーブル情報を書き込みます。- オーバーライド:
writeData
クラス内TableWriter_Default
- パラメータ:
table
- DBTableModelオブジェクトwriter
- PrintWriterオブジェクト- 変更履歴:
- 2.0.0.1 (2002/09/20) 先頭が0 でかつ数字タイプ(S9)でない場合に ' を出力するように修正, 2.0.0.5 (2002/09/30) 先頭が0 でかつ数字タイプ(S9 or R)でない場合に ' を出力するように修正。, 2.3.1.2 (2003/01/28) データ出力時に、改行が余分に出される箇所を修正。, 3.1.0.0 (2003/03/20) DBColumn から、getDbType() キーを直接取り出す, 3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。, 3.7.0.2 (2005/02/14) 行番号情報を、出力する(true)/しない(false)を指定, 3.8.0.1 (2005/06/17) DBTypeが NVAR の場合は、元のUnicodeに戻します。, 5.1.6.0 (2010/05/01) DbType の初期値(dbType)を利用する。, 5.2.1.0 (2010/10/01) useRenderer 対応, 5.6.9.4 (2013/10/31) 数字型でない場合の先頭が 0 の時, 6.0.1.2 (2014/08/08) カラム飛ばしできる機能を追加, 6.0.4.0 (2014/11/28) データ出力用のレンデラー, 8.5.2.0 (2023/07/14) 一部の機能廃止による修正(問合・トラブル 0200010980), 8.5.6.1 (2024/03/29) 継承で使えるように、一部修正します。
-
csvInit
writeDBTable を実行する前の初期設定を行います。 サブクラスによって処理方法が異なります。 ここでは、separator に、CSV_SEPARATOR を登録しています。- 変更履歴:
- 8.5.6.1 (2024/03/29) 継承で使えるように、一部修正します。
-
numberQuotation
先頭の行番号に対してのクオーテーション処理を行います。 サブクラスによって処理方法が異なります。- パラメータ:
row
- 行番号- 戻り値:
- 変換後の文字列
- 変更履歴:
- 8.5.6.1 (2024/03/29) 継承で使えるように、一部修正します。
-
dataQuotation
データを書き込む場合の区切り文字をセットします。 このクラスでは、CSV 固定の為、区切り文字のセットは無効になります。- パラメータ:
val
- 入力文字列dtype
- DBタイプ(STRING/NUMBER)- 戻り値:
- 変換後の文字列
- 変更履歴:
- 8.5.6.1 (2024/03/29) 継承で使えるように、一部修正します。
-