ファイルを使用して現在のディレクトリを表示する

C++Beginner
オンラインで実践に進む

はじめに

この実験では、file を使用して現在のディレクトリまたはフォルダを表示する C++ プログラムを作成する方法を学びます。現在のディレクトリ内のファイルとフォルダの一覧を表示するための 2 つの異なる方法を実装します。

C++ ファイルを作成する

~/project ディレクトリに main.cpp という名前の C++ ファイルを作成します。このファイルを作成するには、任意のコードエディタや IDE を使用できます。

touch ~/project/main.cpp

必要なライブラリをインクルードする

このステップでは、プログラムに必要なライブラリをインクルードする必要があります。これらのライブラリは、C++ でファイルやディレクトリを操作する際に必要不可欠です。以下のコードを使用してライブラリをインクルードします。

#include<iostream>
#include<dirent.h> // Header file for directory operations
using namespace std;

最初の方法を実装する

このステップでは、現在のディレクトリ内のファイルとフォルダの一覧を表示するための最初の方法を実装します。for ループを使用して一覧を表示するには、以下のコードを使用します。

int main()
{
    struct dirent *d; // ディレクトリエントリ用のポインタ
    DIR *dr; // ディレクトリ用のポインタ
    dr = opendir(".");
    if(dr!=NULL)
    {
        cout<<"List of Files & Folders:\n";
        for(d=readdir(dr); d!=NULL; d=readdir(dr))
        {
            cout<<d->d_name<<endl; // ファイルまたはフォルダの名前を表示
        }
        closedir(dr);
    }
    else
        cout<<"\nError Occurred!";
    cout<<endl;
    return 0;
}

2 番目の方法を実装する

このステップでは、現在のディレクトリ内のファイルとフォルダの一覧を表示するための 2 番目の方法を実装します。whileループを使用して一覧を表示するには、以下のコードを使用します。

int main()
{
    struct dirent *d; // ディレクトリエントリ用のポインタ
    DIR *dr; // ディレクトリ用のポインタ
    dr = opendir(".");
    if(dr!=NULL)
    {
        cout<<"List of Files & Folders:\n";
        while((d=readdir(dr))!=NULL)
            cout<<d->d_name<<endl; // ファイルまたはフォルダの名前を表示
        closedir(dr);
    }
    else
        cout<<"\nError Occurred!";
    cout<<endl;
    return 0;
}

プログラムをコンパイルして実行する

このステップでは、main.cpp ファイルをコンパイルして実行する必要があります。プログラムをコンパイルして実行するには、以下のコマンドを使用します。

g++ main.cpp -o main &&./main

main.cpp の完全なコード

#include<iostream>
#include<dirent.h> // Header file for directory operations
using namespace std;

// 方法 1
int main()
{
    struct dirent *d; // ディレクトリエントリ用のポインタ
    DIR *dr; // ディレクトリ用のポインタ
    dr = opendir(".");
    if(dr!=NULL)
    {
        cout<<"List of Files & Folders:\n";
        for(d=readdir(dr); d!=NULL; d=readdir(dr))
        {
            cout<<d->d_name<<endl; // ファイルまたはフォルダの名前を表示
        }
        closedir(dr);
    }
    else
        cout<<"\nError Occurred!";
    cout<<endl;

    // 方法 2
    dr = opendir(".");
    if(dr!=NULL)
    {
        cout<<"List of Files & Folders:\n";
        while((d=readdir(dr))!=NULL)
            cout<<d->d_name<<endl; // ファイルまたはフォルダの名前を表示
        closedir(dr);
    }
    else
        cout<<"\nError Occurred!";
    cout<<endl;
    return 0;
}

まとめ

この実験では、ファイルを使用して現在のディレクトリまたはフォルダを表示するための C++ プログラムを書く方法を学びました。現在のディレクトリ内のファイルとフォルダの一覧を表示するための 2 つの異なる方法を実装しました。また、Ubuntu 端末で C++ プログラムをコンパイルして実行する方法も学びました。