【问题标题】:How can I store user input inside a text file in perl?如何在 perl 中将用户输入存储在文本文件中?
【发布时间】:2013-05-06 16:46:44
【问题描述】:

我正在尝试创建一个文本文件来存储用户输入,例如他们的姓名首字母。此代码将提示用户输入信息并创建一个文本文件,但该文本文件仍为空。如何获取信息以将其自身存储在文本文件中?我试过使用变体 $initials 但它没有存储信息。我似乎无法弄清楚我做错了什么。

use strict;
use warnings;

print "Enter users initials: ";
my $initials = <STDIN>;    # prompts user for input

open( MYFILE, '>>initials.txt' );    #creates file initials.txt
while (<MYFILE>) {
    chomp;
    print MYFILE $initials;
}
close(MYFILE);

【问题讨论】:

  • 我认为您无法读取打开以进行附加的文件&gt;&gt;。为什么要逐行读取文件?

标签: perl file input printing prompt


【解决方案1】:

不需要while循环或chomp

use strict;
use warnings;

print "Enter users initials: ";
my $initials = <STDIN>;    # prompts user for input

open( MYFILE, '>>initials.txt' );    #creates file initials.txt
print MYFILE $initials;
close(MYFILE);

【讨论】:

    【解决方案2】:

    这会将 $initials 中的文本附加到文件末尾。

    use strict;
    use warnings;
    
    print "Enter users initials: ";
    my $initials = <STDIN>; # prompts user for input 
    
    open my $fh, '>>', 'initials.txt' or die $!; #creates file initials.txt
    print $fh $initials;
    close $fh; 
    

    【讨论】:

      猜你喜欢
      • 2013-07-12
      • 2017-08-23
      • 1970-01-01
      • 2016-02-12
      • 1970-01-01
      • 2019-09-13
      • 1970-01-01
      • 1970-01-01
      • 2018-07-19
      相关资源
      最近更新 更多