はじめに
レイアウト定義の フォーマット形式 の《固定長》と《可変長》についての説明をしたので、これまでに登録した定義を使って、今度は フォーマット形式 から CSV形式 に変換するデータ加工をやってみます。
今回使用するレイアウトの定義については、以下を参照してください。
あれ?〝CSV形式〟や〝フォーマット形式の《固定長》〟は? と思われたアナタ。
今回CSV形式の定義は、ID省略で対応します。IDを登録する場合は レイアウト定義_CSV編 も参照してください。
また、フォーマット形式の《可変長》編で作成したフォーマットは、すべてが可変長の項目ではなく、固定長の項目と組合わせています。
なので、今回の説明に固定長ONLYのフォーマットは使用しません。
入力データ
今回の入力データは、フォーマット形式の《可変長》編で作成した出力ファイルを使用します。
作るのが面倒な方は、以下のデータを使用してください。
1000000東京都 千代田区$以下に掲載がない場合$トウキョウト チヨダク$イカニケイサイガナイバアイ
1020072東京都 千代田区$飯田橋$トウキョウト チヨダク$イイダバシ
1020082東京都 千代田区$一番町$トウキョウト チヨダク$イチバンチョウ
1010032東京都 千代田区$岩本町$トウキョウト チヨダク$イワモトチョウ
1010047東京都 千代田区$内神田$トウキョウト チヨダク$ウチカンダ
1000011東京都 千代田区$内幸町$トウキョウト チヨダク$ウチサイワイチョウ
082005151000000東京都 千代田区以下に掲載がない場合トウキョウト チヨダクイカニケイサイガナイバアイ080605071020072東京都 千代田区飯田橋トウキョウト チヨダクイイダバシ080605081020082東京都 千代田区一番町トウキョウト チヨダクイチバンチョウ080605071010032東京都 千代田区岩本町トウキョウト チヨダクイワモトチョウ080605061010047東京都 千代田区内神田トウキョウト チヨダクウチカンダ080605091000011東京都 千代田区内幸町トウキョウト チヨダクウチサイワイチョウ
なお、フォーマット形式の《可変長》編で作成した「項目名指定」の出力データには、出力結果が見易いように「改行コード」を付加しています。
今回の入力ファイルに使用する場合は、「レコードごとに改行する」の
を外して、出力ファイルを作り直してから使用してください。
可変長(デリミタ指定)から CSV
データ加工の入出力に関する設定の説明は、ここでは省略。
ここでは、以下の条件で設定します。
- 入力側のフォーマットIDは、可変長(デリミタ指定)で登録したIDを使用
- 出力側のCSVはID省略。区切り文字=, | 囲み文字="
- その他の項目は、初期値使用
マッピング
関係線はこんな感じでシンプルに。
入力項目と出力項目の間を、上から順に引いてみました。
出力結果はこちら ![]()
- 入力側の項目はすべて文字タイプ(XまたはM)なので、すべての出力項目に囲み文字(")付
- 固定長の項目は指定されたバイト数、可変長の項目はデリミタ($)で区切って、CSVの各項目に出力
- 都道府県名("東京都"や"トウキョウト")の後ろに空白が無いのは、出力設定で「文字データの後ろスペースの扱い」を〝カットする〟にしているから。
項目別にスペースの扱いを変えたい時は、マッピング情報の「出力項目情報」で個別に設定します。
下図のように、2項目目の「都道府県名ー漢字」の後ろスペースを〝カットしない〟に設定した場合は
以下のように、「都道府県名ー漢字」の後ろのスペースはカットされずに "東京都 " で出力されます。
可変長(項目名指定)から CSV
データ加工の入出力に関する設定の説明は、ここでは省略。
ここでは、以下の条件で設定します。
- 入力側のフォーマットIDは、可変長(項目名指定)で登録したIDを使用
- 出力側のCSVはID省略。区切り文字=, | 囲み文字="
- その他の項目は、初期値使用
マッピング
関係線はこんな感じでシンプルに。
項目長を格納している上の4項目は外して、5項目目から順に引いてみました。
出力結果はこちら ![]()
可変長の項目は、指定された項目に格納されたバイト数で区切って、CSVの各項目に出力されています。
以上です。



