use File::Spec;
#G:\perl\flw\data_flw.txt;
#$doc=File::Spec->catfile("G:\\perl\\flw","detail.dat");
$doc=detail.dat;
print $doc;
$ARGV[0] = qw/detail.dat/; #这里保存要修改的文件,与脚本放在同一个目录下
$^I=".bak"; #:$^I的值可以决定是要重写文件,还是备份文件,若要重写,只须将其值设为空就可,若要备份,则$^I=".bak", 他就会把改过的文件命名为filename.bak了
while(<>)
{
s/\|/,/g; #分隔符转换成
s/\t//g; #去掉每个字段中的多余制表符
print;
}
1:功能烂 $^I必须生成.bak文件才能进行修改,无法直接写文件
2:$ARGV[0] = "detail.dat" 致使数据文件必须和perl在同一个目录里,无法直接修改其他目录文件。
。。。。