xdwtemp

xdwtemp モジュールでは、XDWAPI で使用可能な一時ファイルを提供する XDWTemp クラスに関連する機能を用意しています。

XDWTemp オブジェクト

XDWTemp クラスは、XDWAPI での使用に適した一時ファイルの生成を支援します。

一時ファイルを使用する場合、通常は Python 標準ライブラリの tempfile モジュールを使います。しかし、XDWAPI は取り扱うファイルすべてについて読み取りアクセスをも含めた排他ロックをかけようとします。このため、tempfile.mkstemp() などの共有アクセスを前提とした機能を使うことができません。XDWTemp クラスは、XDWAPI で使用できるようなユニークなパス名を生成します。

XDWTemp クラスは、コンテキスト管理プロトコルをサポートしており、with 文で利用できます。次のように利用します。

with XDWTemp() as temp:
    ...
    # パス名として temp.path を使用するコード
    ...

with ブロックを抜けると、一時ファイルは自動的に消去されます。

コンストラクタ

クラス XDWTemp(suffix='.xdw', prefix='')
suffix は生成される一時ファイルのファイル名の接尾辞です。通常は拡張子を指定します。
prefix
は生成される一時ファイルのファイル名の接頭辞です。

インスタンス属性

dir
一時ファイルが存在するディレクトリの (ユニークな) パス名です。
path
一時ファイルのパス名です。ただし、インスタンス生成時には、このパス名を持つファイルは存在していません。

インスタンスメソッド

close()
一時ファイルを消去します。
self.path
に相当する一時ファイルが存在している場合は消去した上で、self.dir に相当するディレクトリを消去します。
一時ファイルがまだ開かれている場合は、例外を発生します。
Comments