LoginSignup
3
8

More than 5 years have passed since last update.

システム間のファイル連携する際に検討すべきこと

Last updated at Posted at 2018-07-05

概要

システム間でファイル連携をする際に、仕様を明確にしていなかったために、後々問題になることがあります。事前にどのようなことを取り決めておかないといけないかを列挙してみました。

詳細

共通検討事項

全ファイル共通

検討事項 備考
ファイル名 固定名、可変名 yyyyMMddHHmmsssを付けたりする。
拡張子 csv, tsv, json, xml, xlsx 拡張子だけではデータ形式が不明な場合もある。
連携対象 全データ, 前回との差分データ
データなし時の連携 ファイルなし, 空ファイル
連携後のファイル 削除する, 放置する

テキストファイル共通

検討事項 備考
ファイル名 固定名、可変名 末尾にyyyyMMddHHmmsssを付けたりする。
文字コード UTF-8, Shift_JIS BOMの有無。
改行コード CR, LF, CRLF

個別検討事項

可変ファイル

検討事項 備考
セパレータ カンマ, タブ
文字コード UTF-8, Shift_JIS BOMの有無。
改行コード CR, LF, CRLF
値に含まれる制御文字 カンマ, タブ, 改行, ダブルクォート, 改行
ダブルクォートでの囲み 常にあり, 常になし, 文字列のみあり, 必要に応じてあり
タイトル行 あり, なし
ヘッダー行 あり, なし ヘッダー行と明細行で項目数が異なることもある。
フッター行 あり, なし フッター行と明細行で項目数が異なることもある。

固定長ファイル

検討事項 備考
タイトル列 あり, なし
フッター行 あり, なし フッター行と明細行で項目数が異なることもある。

JSON

  • 何があるのかな?

XML

  • 何があるのかな?

補足

  • 特に CSVファイル が厄介な気がします。CSVファイルと言いながら、中身がタブ区切りであったりすることが多々あります。テキストファイルの連携は、早い段階で実ファイルを入手して確認するのが最善かと思います。
  • デヂエのデータを連携した際は、値に改行が含まれていて苦労しました。

編集後記

思いつくままに記載したので、まだまだ検討すべきことはあると思います。
フォロー頂けるとありがたいです。

3
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
8