アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつもお世話になっています。

CGIで現在下記のようなファイルがあります。
【sample.cgi】
1<>2<>3<>4<>5<>
6<>7<>

これを下記のスクリプトで呼び出し配列に入れます。open(IN,"./sample.cgi");
@DATA = <IN>;
close(IN);
@data = split(/<>/,$DATA[0]);
@N_DATA=();
unshift(@N_DATA,"$data[1]<>$data[2]<>$data[3]<>$data[4]<>$data[5]<>$data[6]<>$data[7]<>");
open(OUT,">./sample.cgi") or &error('書き込み失敗');
print OUT @N_DATA;
close(OUT);

しかし実行結果は改行が残ったままで、どうにか
1<>2<>3<>4<>5<>6<>7<>

という形で出力したいのですがどのように変更を行えば宜しいでしょうか。
恐らく「unshift」の部分が行を追加していっていると思うのですが、printなどで出力するとsample.cgiの中身が空になってしまい・・・。

「読み込むデータに改行があった場合は改行を削除して読み込む」という動作をさせたいのですが・・・。

何卒よろしくお願い致します。

A 回答 (1件)

@data = split(/<>/,$DATA[0]);


の前に
chomp($DATA[0]);
@data = split(/<>/,$DATA[0]);
として下さい。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!