CSVファイルとは?
拡張子が .csv (Comma Separated Values) のファイルは、値がカンマで区切られたデータのレコードを含むプレーン テキスト ファイルを表します。 CSV ファイルの各行は、ファイルに含まれる一連のレコードからの新しいレコードです。このようなファイルは、あるストレージ システムから別のストレージ システムにデータを転送する場合に生成されます。すべてのアプリケーションはコンマで区切られたレコードを認識できるため、そのようなデータ ファイルをデータベースにインポートするのは非常に便利です。 Microsoft Excel や OpenOffice Calc などのほとんどすべてのスプレッドシート アプリケーションは、それほど手間をかけずに CSV をインポートできます。このようなファイルからインポートされたデータは、ユーザーに表示するためにスプレッドシートのセルに配置されます。
簡単な歴史
以下は、CSV ファイル形式の起源と歴史に関する簡単な事実です。
1972 - IBM Fortran (レベル H 拡張) コンパイラが OS/360 でサポート
1978 年 - カンマとスペースを区切り文字として使用する FORTRAN 77 で、リスト指定の入出力がサポートされました。
2005 - CSV は RFC4180 で MIME コンテンツ タイプとして標準化されました。
2013 - RFC4180 の欠陥は W3C 勧告によって処理されました
2015 - W3C は、2015 年 12 月に勧告として開始された CSV メタデータ標準の勧告の最初のドラフトを作成しました。
CSV ファイルの変換
CSV ファイルは、これらのファイルを開くことができるアプリケーションを使用して、いくつかの異なるファイル形式に変換できます。たとえば、Microsoft Excel では、CSV ファイル形式からデータをインポートして、XLS、XLSX、PDF、TXT に保存できます。 、XML および HTML ファイル形式。同様に、他のデスクトップ サービスやオンライン サービスでは、CSV ファイルを HTML、ODS、および RTF にエクスポートする機能が提供されています。
CSV ファイル形式
CSVファイル形式はRFC4180で規定されていることが知られています。次の場合、すべてのファイルが CSV 準拠であると定義されます。
- 各レコードは、改行 (CRLF) で区切られた個別の行に配置されます。例えば:
- aaa、bbb、ccc CRLF
- zzz,yyy,xxx CRLF
- ファイルの最後のレコードには、改行がある場合とない場合があります。例えば:
- aaa、bbb、ccc CRLF
- zzz,yyy,xxx
- 通常のレコード行と同じ形式で、ファイルの最初の行としてオプションのヘッダー行が表示される場合があります。このヘッダーには、ファイル内のフィールドに対応する名前が含まれ、ファイルの残りのレコードと同じ数のフィールドが含まれている必要があります (ヘッダー行の有無は、このオプションの「ヘッダー」パラメーターを介して示される必要があります)。 MIME タイプ)。例えば:
- field_name,field_name,field_name CRLF
- aaa、bbb、ccc CRLF
- zzz,yyy,xxx CRLF
- ヘッダーと各レコード内には、コンマで区切られた 1 つ以上のフィールドが存在する場合があります。各行には、ファイル全体で同じ数のフィールドが含まれている必要があります。スペースはフィールドの一部と見なされるため、無視しないでください。レコードの最後のフィールドの後にコンマを続けてはなりません。例えば:
- ああ、bbb、ccc
- 各フィールドは、二重引用符で囲まれている場合と囲まれていない場合があります (ただし、Microsoft Excel などの一部のプログラムでは、二重引用符がまったく使用されません)。フィールドが二重引用符で囲まれていない場合、フィールド内に二重引用符が表示されないことがあります。例えば:
*「aaa」、「bbb」、「ccc」CRLF - zzz,yyy,xxx
- 改行 (CRLF)、二重引用符、およびコンマを含むフィールドは、二重引用符で囲む必要があります。例えば:
- “aaa”,“b CRLF
- bb”、“ccc” CRLF
- zzz,yyy,xxx
- フィールドを囲むために二重引用符が使用されている場合、フィールド内にある二重引用符は、その前に別の二重引用符を付けてエスケープする必要があります。例えば:
- “aaa”、“b”、“bb”、“ccc”
ただし、最近の使用法に照らして、区切り文字はカンマのみに限定されず、セミコロン、タブ、またはスペースも使用できます。 Microsoft Excel などのアプリケーションには、CSV ファイルからレコードをインポートするための区切り文字を指定するオプションがあります。