名前空間
変種
操作

std::remove

From cppreference.com
< cpp‎ | io‎ | c
 
 
 
C形式I/O
型とオブジェクト
関数
ファイルアクセス
直接入出力
非書式化入出力
書式付き入力
(C++11)(C++11)(C++11)    
(C++11)(C++11)(C++11)    
書式付き出力
ファイルポジショニング
エラーハンドリング
ファイル操作
remove
 
ヘッダ<cstdio>で定義
int remove( const char* pathname );

pathname によって示されるファイルを削除します。

ファイルが現在いずれかのプロセスで開かれている場合、この関数の動作は実装定義です。POSIX システムではファイル名を削除しますが(ディレクトリエントリ)、ファイルがプロセスで開かれている間、またはファイルへの他のハードリンクが存在する間は、ファイルが使用しているファイルシステム領域は解放されません。Windows では、そのような場合にファイルの削除は許可されません。

目次

[編集] パラメータ

pathname - 削除するファイルを特定するパスを含む、null 終端文字列へのポインタ

[編集] 戻り値

0 成功時、またはエラー時にはゼロ以外の値。

[編集] 注記

POSIX は、この関数の動作に関する多くの追加の詳細を指定しています。

標準ライブラリは、イテレータのペアと値を引数にとる関数テンプレート std::remove も定義しています。このオーバーロードは、標準の アルゴリズムの 1 つです。

[編集]

#include <cstdio>
#include <cstdlib>
#include <fstream>
#include <iostream>
 
int main()
{
    // create a file, check success using operator! of temporary stream object
    if (!std::ofstream("file1.txt").put('a'))
    {
        std::perror("Error creating file1.txt");
        return EXIT_FAILURE;
    }
    std::cout << std::ifstream("file1.txt").rdbuf() << '\n'; // print file
 
    std::remove("file1.txt"); // delete file
 
    if (!std::ifstream{"file1.txt"}) // uses operator! of temporary stream object
    {
        std::perror("Error opening deleted file");
        return EXIT_FAILURE;
    }
    return EXIT_SUCCESS;
}

実行結果の例

a
Error opening deleted file: No such file or directory

[編集] 関連項目

(C++17)(C++17)
ファイルまたは空のディレクトリを削除する
ファイルまたはディレクトリとその内容をすべて再帰的に削除する
(関数) [編集]
ファイル名を変更する
(関数) [編集]
English 日本語 中文(简体) 中文(繁體)