C言語でファイルをバッチ処理で移動する方法

C言語では、rename() 関数を使用してファイルを1度に複数移動できます。rename() 関数のプロトタイプは次のとおりです。

int rename(const char *oldname, const char *newname);

oldnameは移動前のファイルのパスと名前、newnameは移動後のパスと名前を表す

ファイルを一括移動する方法のサンプルコードは次のとおりです。

#include <stdio.h>
#include <stdlib.h>

int main() {
    // 定义要移动的文件原始路径和名称
    const char* oldFiles[] = {"file1.txt", "file2.txt", "file3.txt"};

    // 定义要移动到的新路径和名称
    const char* newDir = "new_directory/";

    int numFiles = sizeof(oldFiles) / sizeof(oldFiles[0]);

    // 批量移动文件
    for (int i = 0; i < numFiles; i++) {
        // 拼接新路径和名称
        char newFileName[100];
        sprintf(newFileName, "%s%s", newDir, oldFiles[i]);

        // 移动文件
        int result = rename(oldFiles[i], newFileName);
        if (result == 0) {
            printf("File %s moved successfully.\n", oldFiles[i]);
        } else {
            printf("Failed to move file %s.\n", oldFiles[i]);
        }
    }

    return 0;
}

上のサンプルコードでは、oldFiles配列は移動するファイルの元のパスと名前を、newDir変数は移動先の新しいパスを保持し、rename()関数がファイルを一括移動するために使用されます。ループ中、新しいパスと名前が連結され、rename()関数が呼び出されてファイル移動操作が行われます。移動に成功すると、対応する成功メッセージが出力され、移動に失敗すると対応する失敗メッセージが出力されます。

bannerAds