【Perl】テキストファイルの内容を1行ずつ変換して別ファイルに保存

Perl

テキストファイルの内容を変化するサンプルです。入力ファイルの小文字を大文字に変換し、別ファイルに出力します。

入力ファイル

This file is for testing the conversion from lowercase to uppercase.
Programming is fun.
Daily learning is important.

出力ファイル

THIS FILE IS FOR TESTING THE CONVERSION FROM LOWERCASE TO UPPERCASE.
PROGRAMMING IS FUN.
DAILY LEARNING IS IMPORTANT.

サンプルコード

ファイルハンドルを2つ開き、INPUTから取得した内容を加工してOUTPUTに書き出します。

#!/usr/bin/perl
use strict;
use warnings;

# 入出力ファイル
my $file_in  = "input.txt";
my $file_out = "output.txt";

# 2つのファイルをオープン。失敗した場合はエラーメッセージを出力して終了
open( INPUT,  '<', $file_in  ) or die "入力ファイル '$file_in' のオープンに失敗: $!";
open( OUTPUT, '>', $file_out ) or die "出力ファイル '$file_out' のオープンに失敗: $!";

# ファイルの内容を読み込み
while (my $line = <INPUT>) {

    # 改行文字を削除
    chomp($line);

    # 小文字を大文字に変換する
    my $upper = uc( $line );

    # 行の内容を出力ファイルに書き出す
    print OUTPUT "$upper\n";
}

# ファイルハンドルをクローズ
close( OUTPUT );
close( INPUT );

まとめ

本記事では、Perlでテキストファイルの内容を1行ずつ変換して別ファイルに保存する方法を紹介しました。

タイトルとURLをコピーしました