vl-filename-mktemp (AutoLISP)

テンポラリ ファイルに使用される一意のファイル名を返します。

サポートされているプラットフォーム: Windows および Mac OS

構文と要素

(vl-filename-mktemp [pattern directory extension])
pattern

タイプ: 文字列

ファイル名パターン。nil を指定するか、何も指定しなかった場合、vl-filename-mktemp 関数は "$VL" を使用します。

directory

タイプ: 文字列

テンポラリ ファイルのフォルダ名。nil を指定するか、何も指定しなかった場合、vl-filename-mktemp 関数は次の順序でフォルダを選択します。

  • pattern で指定されたフォルダ(指定されている場合)
  • 環境変数 TMP で指定されたフォルダ
  • 環境変数 TEMP で指定されたフォルダ
  • 現在のフォルダ
extension

タイプ: 文字列

ファイルに割り当てる拡張子。nil が指定するか、何も指定しなかった場合、vl-filename-mktemp 関数は pattern の拡張子部分を使用します(空文字列になることがあります)。

戻り値

タイプ: 文字列

次の形式のファイル名を含んだ文字列値。

directory\base<XXX><.extension>

ここで、

base は最大 5 文字で、pattern から取得します。

XXX は 3 文字の一意の組み合わせです。

セッション中に vl-filename-mktemp 関数で作成したすべてのファイル名は、アプリケーションを終了したときに無効になります。

Windows
(vl-filename-mktemp)
"C:\\TMP\\$VL~~004"

(vl-filename-mktemp "myapp.del")
"C:\\TMP\\MYAPP005.DEL"

(vl-filename-mktemp "c:\\acadwin\\myapp.del")
"C:\\ACADWIN\\MYAPP006.DEL"

(vl-filename-mktemp "c:\\acadwin\\myapp.del")
"C:\\ACADWIN\\MYAPP007.DEL"

(vl-filename-mktemp "myapp" "c:\\acadwin")
"C:\\ACADWIN\\MYAPP008"

(vl-filename-mktemp "myapp" "c:\\acadwin" ".del")
"C:\\ACADWIN\\MYAPP00A.DEL"
Mac OS
(vl-filename-mktemp)
"/documents/$VL~~001"

(vl-filename-mktemp "myapp.del")
"/documents/MYAPP002.DEL"

(vl-filename-mktemp "/myutilities/temp/myapp.del")
"/myutilities/temp/MYAPP003.DEL"

(vl-filename-mktemp "/myutilities/temp/myapp.del")
"/myutilities/temp/MYAPP004.DEL"

(vl-filename-mktemp "myapp" /myutilities/temp")
"/myutilities/temp/MYAPP005"

(vl-filename-mktemp "myapp" "/myutilities/temp" ".del")
"/myutilities/temp/MYAPP006.DEL"