3

这两个代码片段有什么区别?

  1. open (MYFILE, '>>data.txt');

  2. open (MYFILE, '>data.txt');

4

1 回答 1

13
  1. open (MYFILE, '>>data.txt')— Open data.txt,保留原始数据,从末尾追加数据。
  2. open (MYFILE, '>data.txt')— 打开data.txt,删除里面的所有内容,从头开始写入数据。

来自perldoc -f open

如果 MODE 为'<'或没有,则打开文件以供输入。如果 MODE 为'>',则文件被截断并打开输出,必要时创建。如果 MODE 为'>>',则打开文件以进行附加,如有必要,将再次创建。

它源于shell的使用,

  • cmd < file.txt将文件复制到标准输入,
  • cmd > file.txt将标准输出写入文件,以及
  • cmd >> file.txt将标准输出附加到文件的末尾。
于 2010-06-09T08:55:18.050 回答