Filename

このページは最後に更新されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

last mod. 2009-09-10 (木) 16:43:16

Chapter 20 標準ライブラリ

module Filename: sig  end

ファイル名の処理です。


val current_dir_name : string

現在のディレクトリを表す慣習的な名前です (例えば Unix では .) 。

val parent_dir_name : string

現在のディレクトリの親ディレクトリを表す慣習的な名前です(例えば Unix では ..) 。

val concat : string -> string -> string

concat dir file は指定されたディレクトリ dir 中の指定されたファイル file を表すファイル名を返します。

val is_relative : string -> bool

与えられたファイル名が現在のディレクトリに対して相対的なものである場合 true を返します。絶対的なものである場合 (つまり Unix で / で始まるもの) 、false を返します。

val is_implicit : string -> bool

与えられたファイル名が相対的なもので、現在のディレクトリに対して明示的な参照 (Unix で ./ や ../) で始まらない場合 true を返します。ルートディレクトリや現在のディレクトリに対して明示的な参照で始まる場合は false を返します。

val check_suffix : string -> string -> bool

check_suffix name suff はファイル名 name が接尾辞 suff で終わる場合は true を返します。

val chop_suffix : string -> string -> string

chop_suffix name suff はファイル名 name から接尾辞 suff を取り除きます。name が suff で終わらない場合の動作は未定義です。

val chop_extension : string -> string

与えられたファイル名から拡張子を取り除いて返します。拡張子はピリオドから始まる最も短い接尾辞です (例えば .xyz) 。

与えられたファイル名の中にピリオドがない場合は例外 Invalid_argument を発生します。

val basename : string -> string

ファイル名をディレクトリ名とベースファイル名に切り分けます。concat (dirname name) (basename name) で name と同じものを返します。カレントディレクトリを dirname name に (Sys.chdir で) 設定した後、(相対的なファイル名) basename name が示すファイルは Sys.chdir を呼ぶ前 name が示していたファイルと同じです。

val dirname : string -> string

Filename.basename を見て下さい。

val temp_file : string -> string -> string

temp_file prefix suffix はテンポラリディレクトリ中の新しい一時ファイルのファイル名を返します。一時ファイルのベースファイル名は prefix で始まり、適当に選ばれた整数が挟まり、suffix で終わっています。一時ファイルは空で、パーミッションは 0o600 (ファイルオーナだけが読み書き可能) になっています。このファイルは temp_file が呼ばれた時点で存在するどのファイルとも異なることが保証されます。

val open_temp_file : ?mode:Pervasives.open_flag list ->
      string -> string -> string * Pervasives.out_channel

Filename.temp_file と同じですが、新しい一時ファイル名だけでなく、このファイルを (自動的に) オープンした出力チャンネルも返します。この関数は temp_file よりも安全です。というのは、プログラムが temp_file で作成した一時ファイルをオープンする前に、ファイルを改変される危険がない (例えば、シンボリックリンクと置き換えるなど) からです。オプション引数 mode はファイルオープンのフラグのリストで、Open_append 、Open_binary 、Open_text の 1 つ以上を指定できます。デフォルトでは [Open_text] (テキストモードでのオープン) です。

val temp_dir_name : string

テンポラリディレクトリ名を返します。Unix 環境では環境変数 TMPDIR の値が使用されますが、設定されていなければ 「/tmp」 が使われます。Windows 環境では、環境変数 TEMP の値が使用されますが、設定されていなければ、「.」 が使われます

val quote : string -> string

与えられたファイル名を、シェルコマンドラインで 1 つの引数として使用出来るようシェルのメタキャラクタをすべてエスケープしたものを返します。

新規 編集 添付