ルートディレクトリの取得

システムのルートディレクトリのパスを取得するには次の2つの方法があります。

まず1つめのdrives関数を使う場合ですが次のような使い方をします。

QList<QFileInfo> drives = QDir::drives();
foreach(QFileInfo drive , drives){
    qDebug() << "drive path = " << drive.absoluteFilePath();
}

この関数を使った場合、システム上の全てのルートディレクトリを取得でき、たとえばWindowsなら"C:/""D:/"などの複数が返ってきて、それ以外のLinuxなどなら"/"だけが返ってきます。

次にroot関数ですがこれも同じくルートディレクトリを返します。

qDebug() << "root path = " << QDir::root().absolutePath();

drives関数と違う点はシステム上のルートディレクトリを1つだけ返すということです。なのでWindowsの場合は"C:/"が返ってくることになります。Linuxではdrives関数の時と同じく"/"だけが返ってきます。

以上、環境に依存するルートディレクトリのパスを調べる方法でした。では、また!

関連項目
プライバシーポリシー