固定長ファイルをCSV形式で出力

# 固定長形式のファイルをCSV形式で出力する
# フィールド数は7
# 各フィールドの幅は左から5, 5, 12, 10, 3, 8, 8桁であるとする
while (<>) {
  @retuhaba = (5, 5, 12, 10, 3, 8, 8);
  for ($i = 0; $i < scalar(@retuhaba); $i++) {
    $output = substr($_, 0, $retuhaba[$i]);
    $output =~ s/^\s*|\s*$//g;
    print "$output," if $i < scalar(@retuhaba) - 1;
    print "$output\n" if $i == scalar(@retuhaba) -1;
    $_ = substr($_, $retuhaba[$i], length($_));
  }
}