Asakusa Framework Advent Calendar 2016の10日目です。
今日は、2016/12/6にリリースされたAsakusaFW 0.9.0のDirect I/OのCSVフィールド属性に追加された要素についてです。
Direct I/Oでcsvファイルを扱う際に、DMDLのプロパティーに@directio.csv.field属性を指定できます。この属性にquoteという要素が追加になりました。
Direct I/Oでcsvファイルを出力する場合、値にカンマが含まれていたら、自動的にダブルクォーテーションで囲まれて出力されます。逆に、カンマが無ければダブルクォーテーションで囲みませんでした。
が、quote要素で「always」を指定すると、カンマが含まれていなくても常にダブルクォーテーションで囲むようになるそうです。
「needed」だと従来と同じ動作で、デフォルトは「default」で今まで通りの動作(つまりneededと同じ)です。
AsakusaFWのCSVは概ねRFC 4180に沿ったものになっているらしいのですが、現実問題、それに従っているCSVばかりじゃないんですよねー。柔軟に設定できるのは仕方ない良いことだと思います。