はじめに
今回は、以前投稿した「CSV形式からフォーマット形式《固定長》へ」の入力側をCSV形式からExcel形式に変えるだけ(決して手を抜く訳では・・・
)なので、説明を割愛した部分は、以下の記事を参考にしてください。
入力データ
Excel形式のレイアウト定義を作成する際に使用した郵便番号データを使用します。
レイアウト情報
以下の説明内で登録したレイアウト定義を使用します
データ加工
1.入力ファイルエリアの編集
入力形式=Excel
入力設定
以下で説明する項目以外の設定は、初期値を採用します。
レイアウト
- ID:
- 入力ファイル用に登録したID
- ファイル名:
- 検証用に作成した郵便番号データのExcelファイルを指定
2.出力ファイルエリアの編集
出力設定
「CSV形式からフォーマット形式《固定長》へ」の設定を丸パクリします。
ただし、出力先のファイル名は、今回用のファイル名に変えることをお勧めします。
3.抽出条件の設定
初期設定のまま使用
4.関係線の設定1〔抽出条件と出力ファイル〕
抽出条件のアイコンを選んで、出力ファイルのアイコンの上にドラッグ&ドロップし、アイコン間の関係線をつなぎます。
5.関係線の設定2〔入力項目と出力項目をマッピング〕
こちらも「CSV形式からフォーマット形式《固定長》へ」の設定と同じようにつなぎます。
今回は「郵便番号」以外の項目名が違うので、項目毎に手動でつないでください。
6.データ加工処理
すべての設定が終わったので、 最後にIDを登録して、現在表示されている内容で、データ加工を実行します。
補足
通常、フォーマット形式のデータは、そのデータを読み取る(使用する)プログラムやアプリ側でレイアウト定義します。
例えば、上記の「出力ファイルプレビュー」も、設定したフォーマットIDの情報から各項目を表示しているので、横幅を縮めても列ごとに綺麗に並んで表示されています。
しかし、レイアウト定義の無いプログラム(例えばメモ帳など)でファイルを開くと、設定値に因って結果は異なりますが、多くの場合以下のように連なって表示されます。
この場合、1レコードが247バイトなので、改行のタイミング(折り返し桁数)を247に設定すると、出力結果が見易くなります。
ちなみに、〝出力結果を確認し易くする〟だけで言うと、出力設定で改行コードをレコード毎に付けることが出来ます。
レコード毎に改行コードが付くので、メモ帳などで開いた場合、折り返し桁数の指定が無くても、列ごとに並んで表示されます。
ただし、正式な出力結果に改行コードは含まれません。
出力結果が正しいことを確認したら、忘れないうちに出力設定の「レコードごとに改行する」の
を外しましょう。
以上です。







