【问题标题】:Prepend TEXT at beginning of file in Perl [duplicate]在 Perl 中的文件开头添加 TEXT [重复]
【发布时间】:2018-09-06 08:52:49
【问题描述】:

我想在“input.txt”文件的开头附加文本。这是我的代码

#!/usr/bin/perl
open(FHR,">>input.txt");
seek(FHR,0,0);
print FHR "Appending at beginning of input.txt file";

但此代码在文件末尾附加数据。如何修改代码!

【问题讨论】:

    标签: perl prepend


    【解决方案1】:

    你不想追加,你想追加。唯一可能的方法是创建一个新文件,写入新内容,然后复制旧文件的其余部分,并将新文件重命名为旧文件的名称。

    my $new_filename = 'newfile.txt';
    my $old_filename = 'oldfile.txt';
    open my $new, '>', $new_filename or die "$new_filename: $!";
    open my $old, '<', $old_filename or die "$old_filename: $!";
    print {$new} "Prepending at the beginning of the file.\n";
    print {$new} $_ while <$old>;
    close $new;
    rename $new_filename, $old_filename or die "rename: $!";
    

    【讨论】:

    • 感谢您的回答。所以,即使我只需要添加单个文本,我也必须将所有内容(旧文件)复制到另一个文件,然后将其复制到新文件。
    猜你喜欢
    • 2013-06-03
    • 1970-01-01
    • 1970-01-01
    • 2020-07-04
    • 2017-09-11
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    • 2018-12-07
    相关资源
    最近更新 更多