前回はファイルのReadコンポーネントを取り扱ったので、今回はWriteについて扱っていきます。
今回使うコンポーネント
コンポーネント | アイコン・領域 | 用途 |
---|---|---|
Write | ファイルを書き込む |
使い方
Writeコンポーネントの使い方はシンプルです。Pathにファイルパス、Contentにファイル内容を記載すれば、ファイルが作成されます。
Pathにはファイルパスを記入しますが、Create parent directoriesをTRUEにすることで、途中のフォルダが未作成な状態でも自動的に作成することができます。
既にPathに同一ファイル名が存在する場合は、Write Modeの設定内容によって挙動が変わります。
オプション | 効果 |
---|---|
OVERWRITE | 上書き保存する。以前に記録済みのものは破棄される。 |
CREATE_NEW | ファイルを新規作成する。既にファイルが存在する場合はエラーとなる。 |
APPEND | 既存のファイルから末尾に追記する。 |
デフォルトはOVERWRITEになっていますが、この状態だと無条件で上書き保存となってしまうため、取り扱いには気を付けましょう。
ファイルタイプ別記載方法
Writeでは色々な形式での記載が可能です。以下が具体例を入れた記述方法となります。
テキストファイル
テキストファイルとして記載する場合は、「output text/plain」を記述します。
%dw 2.0
output text/plain
---
"Test"
JSONファイル
JSONファイルとして記載する場合は、「application/json」を記述します。
%dw 2.0
output application/json
---
{
aaa: "bbb",
cccc: "ddd"
}
CSVファイル
JSONファイルとして記載する場合は、「application/csv」を記述します。JSONでリスト化したものをCSV形式に記載し直すような形になります。サンプルデータはこちらから拝借しました。
%dw 2.0
output application/csv
---
[
{
name: "Mariano",
lastname: "de Achaval",
age: "37",
gender: "male"
},
{
name: "Paula",
lastname: "de Estrada",
age: "37",
gender: "female"
}
]
区切り文字などの指定がある場合は、「output application/csv」の後にオプションを記載します。
%dw 2.0
output application/csv separator="|"
---
※以下略
最後に
このような感じでoutputの MIMEタイプを指定することで色々な形式のファイルを記載することができます。その他にもロック機能なども搭載されているため、排他制御をかける場合は活用しましょう。ロック機能の基本的な使い方についてはReadと同じになります。ファイルの読み書きもMule上からできてより活用の幅も広がってきていると思うので、ここで紹介したReadとWriteについてもポイントを押さえておきましょう。
コメント