1回のprint文で2件レコードをファイルに書くには?

[上に] [前に] [次に]
あき 1999/10/17(日) 04:05:27
1回のprint文で2件レコードをファイルに書こうとしています。
2件のレコードは”0<>”で始まるものと”1<>”で始まるもので区別しています。

open(TATEIN,"$tatefile");
@tatelines = <TATEIN>;
close(TATEIN);

unshift(@tate_work,"1<>");
      unshift(@tatelines,@tate_work);

$new_tatemsg = "0<>$name<>$email<>$url<>$date<>$subj\n";
      unshift(@tatelines,$new_tatemsg);
# データ追加
open(TATEOUT,">$tatefile");
print TATEOUT @tatelines;
close(TATEOUT);

このように記述したところ、1回目の書き込みではうまくいったのですが、
再度CGIを起動してもう1回書き込むと、1回目に書いた”0<>”で始まるレコードと
2回目に書いた”1<>”で始まるレコードがくっついてしまい、合計3レコードになって
しまいました。

きちんと4レコードにするにはどう直せば良いのでしょうか。
お手数ですがどなたか教えていただけないでしょうか。

あき 1999/10/17(日) 17:23:07
[[解決]]
良く見たら@tate_workの最後に"\n"をつけていませんでした。
どうもすみませんでした。

[上に] [前に] [次に]