先頭に空白が入る現象は何故起こるのでしょうか。
[上に]
[前に]
[次に]
くろっくぁ
1999/08/13(金) 16:19:02
$out = "<HTML>\n<BODY>\n@new</BODY>\n</HTML>\n";
とした後
print OUT $out;
のようにしてファイルに出力すると
<HTML>
<BODY>
aaaaa
_aaaaa
__aaaaa
______</BODY>
</HTML>
("_"は空白)
のように書き込まれてしまいます。
print OUT "<HTML>\n<BODY>\n";
print OUT @new;
print OUT "</BODY>\n</HTML>\n";
とすると、ちゃんと
<HTML>
<BODY>
aaaaa
aaaaa
aaaaa
</BODY>
</HTML>
と書き込まれるのですが・・・
このような現象は何故起こるのでしょうか。
愚者
1999/08/13(金) 17:08:42
どんな風に@newにデータをいれてるんですか?
くろっくぁ
1999/08/13(金) 17:24:55
@lines = <IN>;
の後
@new = @lines[7..$#lines-3];
@new = @new[0..8];
unshift(@new, "$hoge\n");
としています。
ふじ
1999/08/13(金) 17:47:40
@a = ( 1, 2, 3);
のとき、
print @a;
123
print "@a";
1 2 3
と出力されます(仕様でしょう)
#空白が入る。
>aaaaa
>_aaaaa
>__aaaaa
なぜ空白が増えて行くのかは分かりませんが・・・
#空の要素がある?
tanaka
1999/08/30(月) 03:33:10
もう解決したと思いますが、
配列を、利用している場合は、
ファイルの読み込みと同じように、
whileまたは、foreachで行えば、
空白は、なくなると思います。
例:
foreach $yy (@new){
print $yy;
}
になります。
[上に]
[前に]
[次に]