/etc/mtab
file を使用して、マウントポイントのリストを取得できます。
QFile file("/etc/mtab");
if (file.open(QFile::ReadOnly)) {
QStringList mountpoints;
while(true) {
QStringList parts = QString::fromLocal8Bit(file.readLine()).trimmed().split(" ");
if (parts.count() > 1) {
mountpoints << parts[1];
} else {
break;
}
}
qDebug() << mountpoints;
}
私のマシンでの出力:
("/"、"/proc"、"/sys"、"/sys/fs/cgroup"、"/sys/fs/fuse/connections"、"/sys/kernel/debug"、"/sys/kernel/ security"、"/dev"、"/dev/pts"、"/run"、"/run/lock"、"/run/shm"、"/run/user"、"/media/sf_C_DRIVE"、"/ media/sf_C_DRIVE"、"/media/sf_D_DRIVE"、"/run/user/ri/gvfs")
このファイルに対して常に true を返すことに注意してください。そのQFile::atEnd()
ため、コードでは使用しませんでした。
QDir::Drives
ドキュメントによると 4 です。これは列挙項目の静的な整数値であり、何も表示されず、ほとんどの場合気にする必要はありません。QDir::drives()
Linux で実行した場合、(ルート ファイルシステムの) アイテムが 1 つだけ含まれます。