3

これら 2 つのコード スニペットの違いは何ですか?

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

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

4

1 に答える 1

13
  1. open (MYFILE, '>>data.txt')— 開きdata.txt、元のデータを保持し、最後からデータを追加します。
  2. open (MYFILE, '>data.txt')— を開きdata.txt、中身をすべて削除し、最初からデータを書き込みます。

からperldoc -f open:

MODE が指定されている'<'か、指定されていない場合、ファイルは入力用に開かれます。MODE が の場合'>'、ファイルは切り詰められて出力用に開かれ、必要に応じて作成されます。MODE が の場合'>>'、ファイルは追加用に開かれ、必要に応じて再度作成されます。

これは、シェルの使用法に由来します。

  • cmd < file.txtファイルを標準入力にコピーするには、
  • cmd > file.txtstdout をファイルに書き込みます。
  • cmd >> file.txtstdout をファイルの末尾に追加します。
于 2010-06-09T08:55:18.050 に答える