私の質問に関連するいくつかの記事を見てきましたが、それを完全に解決するものはありません。私は、標準の一時ディレクトリにファイルを作成する必要がありますし、私はそれを書き終わった後、別の場所に移動します。そのアイデアは、ファイルがダウンロード中に一時的であるとみなされ、ダウンロードが完了した後に永続的になることです。一時ファイル名の取得方法は?
私はmkstempまたはtmpfileのいずれかを呼び出して、これを試しています。それに続いて、書き終わったらrenameです。しかし、リネームを呼び出すためにファイルのフルパスが必要で、明らかにファイル記述子(mkstempが返す)またはFILE *(tmpfileが返す)からファイル名を取得するのは簡単な処理ではありません。それはできますが、エレガントではありません。
一時ファイルを作成して名前を付けるシステムコールはありますか?私はmktempとそれに関連するコールについて知っていますが、それらは一意であるとは保証されていないか、非難されています。あるいは、一時ファイルの作成、書き込み、および移動を行うためのより良い方法があります。
あなたは正しいです、そして、私はドキュメントを読むとき、より徹底する必要があります。 OCDを私に呼びますが、私は[この記事](http://stackoverflow.com/questions/4790471/how-can-i-get-the-temporary-directory-path-in-ubuntu)の情報を使って単に "/ tmp"をハードコーディングする代わりに一時フォルダを作成します。 – jorgander
/tmp /にファイルを作成していて、そのファイルを "/ home/ /のように特定の場所に移動しようとしている場合、cpや移動に時間がかかり、/ tmpと/ home /が別のパーティション領域にあるため、/ home//fileXXXXXのファイルを作成して/ home/ /ファイルに名前を変更してください。 –
Viswesn
最終ファイル名は何ですか? –