モード | 説明 |
---|---|
> | 書き込み(trunc) 。既存のファイルを上書きします。ファイルが見つからなかった場合は新しいファイルを作成します。 |
>> | 書き込み(追加) 。ファイルを上書きしませんが、最後に新しいコンテンツを追加します。存在しないファイルを開くために使用される場合にもファイルを作成します。 |
< | 読む 。読み取り専用モードでファイルを開きます。 |
+< | 読み取り/書き込み 。ファイルを作成または切り捨てません。 |
+> | 読み取り/書き込み(trunc) 。ファイルを作成して切り捨てます。 |
+>> | 読み取り/書き込み(追加) 。作成しますが、ファイルを切り捨てません。 |
chomp
は、ファイルから読み込むときによく使われます。デフォルトでは、改行文字を完全に機能させるためにperldocsを参照しますが、改行文字をトリムします。
文字とバイトの違いに注意してください:すべてのエンコード、特にUTF-8では1バイト文字を使用するわけではありません。これはPerlIOによって完全に処理されますが、潜在的な落とし穴が1つあります。
read
は、その長さとオフセットのパラメータに文字を使用しますseek
とtell
常に バイトを使用して位置決めを行いますしたがって、これらの混合値に基づいて算術演算を使用しないでください。代わりに、例えばEncode::encode('utf8',$value_by_read)
を使ってread
結果からオクテット(バイト)を取得します。そのカウントはtell
とseek
使用できます。