基本的な固定幅テキストをCSVに変換する
固定幅の位置指定テキストをCSV形式に変換する基礎を学びます。カラム定義、文字スライス、出力フォーマットについて解説します。
Basic Conversion
詳細な説明
固定幅テキストからCSVへの基本
固定幅テキストは各フィールドを特定の文字位置に格納します。カンマでフィールドを区切るCSVとは異なり、各フィールドの位置と長さが境界を定義します。
入力例
John Smith 30 New York
Jane Doe 25 London
Bob Johnson 42 Tokyo
カラム定義
| カラム | 開始位置 | 幅 |
|---|---|---|
| FirstName | 0 | 10 |
| LastName | 10 | 10 |
| Age | 20 | 4 |
| City | 24 | 16 |
CSV出力
FirstName,LastName,Age,City
John,Smith,30,New York
Jane,Doe,25,London
Bob,Johnson,42,Tokyo
動作の仕組み
コンバーターは各行を読み込み、定義された位置で部分文字列を抽出します。例えば、FirstNameは文字位置0-9、LastNameは文字位置10-19のように処理されます。ホワイトスペーストリムにより、抽出された各値の末尾スペースが除去されます。
主な注意点
- 期待される位置より短い行では、後方のカラムで空または部分的な値が生成されます
- コンバーターはカラム名を使用してCSVヘッダー行を自動的に追加します
- フィールド値内の特殊文字(カンマ、引用符、改行)はRFC 4180に従ってCSV出力で適切にエスケープされます
ユースケース
レガシーシステムの出力を、スプレッドシート、データベース、pandasやRなどのデータ分析ツールにインポートするためにモダンなCSV形式に変換する場合に使用します。