RecordGetコンポーネントで空行が無視できるように改善

データをファイルに保存する場合、汎用性の高いCSV形式を利用することがよくあります。
私は単に「カンマ区切り」という認識で使用していましたが、正式な仕様がRFC4180で定義されているようです。
http://www.kasai.fm/wiki/rfc4180jp
ただし、仕様が公開されたのは2005年10月という比較的最近のことなので、現場で使っている物と異なる部分もあるかと思います。
よくあるのが空行の使用で、可読性を上げるために空行を挟んでいたり、末尾に空行が入っているケースです。

このようなCSVに対応するため、WARP4.9ではRecordGetコンポーネントfileget_csv.pngで読み込むレコードがCSVの場合に、空行をスキップするかどうかを指定するプロパティ「空行をスキップする」が追加されました。
例えば次のようなCSVレコードを読み込んだ場合、

#球団名,本拠地
巨人,東京ドーム
阪神,阪神甲子園球場

ソフトバンク,福岡Yahoo! JAPANドーム
オリックス,京セラドーム大阪


以前のバージョンでは次のように出力されていました。

"巨人","東京ドーム"
"阪神","阪神甲子園球場"
"",""
"ソフトバンク","福岡Yahoo! JAPANドーム"
"オリックス","京セラドーム大阪"


空行が無視されず、指定されたフィールド数の値が空で埋められていますね。
WARP4.9で追加された「空行をスキップする」オプションを「はい」にして読み込むと、

"巨人","東京ドーム"
"阪神","阪神甲子園球場"
"ソフトバンク","福岡Yahoo! JAPANドーム"
"オリックス","京セラドーム大阪"


このように空行が無視されて出力されます。

以前のバージョンでは空行を無視して処理したい場合には、あらかじめ空行を削除したり、読み込んだCSVストリームをさらにRecordFilterコンポーネントを使って不要な行を削除する必要があったので、若干面倒くさいと感じていましたが、今回の拡張で簡単に同じことができるようになりました。
以前と動作が変わってしまうのではと心配される方がいらっしゃるかもしれませんが、このプロパティで「いいえ」を指定すれば以前と同じ動作になります。
また、以前のバージョンで作成したフローについては、このプロパティで「いいえ」が指定された状態で読み込まれますので、そのまま実行すれば以前と動作は変わりません。読み込んだ後でプロパティを切り替えることもできるので、必要に応じて使い分けてくださいね。

この記事は役に立ちましたか?
1人中0人がこの記事が役に立ったと言っています

他のキーワードで検索する