Qtでdirを作成するのに問題があります。ドキュメントのディレクトリにディレクトリを作成したいので、次のようなものを作成します。
QString path("C:/Users/Me/Documents/MyApp/profiles/");
Qdir dir = QDir::root();
dir.mkdir(path);
しかし、それはうまくいきません!セパレーターの「/」と「\」を使用してテストしましたが、2つのケースでは機能しません。
どうすればディレクトリを作成できますか?
ありがとうございました。
_QDir::mkpath
_をdir.mkpath(path);
として使用してみてください
あなたはこれを行うことができます:
QDir dir(path);
if (!dir.exists()){
dir.mkdir(".");
}
QDir dir = QDir::root()
は、ルートを指すように構成されたQDir
のインスタンスを作成し、その設定をdir
にコピーします。余分なコピーとコードを回避するには、QDir dir(QDir::root);
を使用できます。 Windowsでは、システムドライブのルート(通常は_C:\
_)を指します。
dir.mkdir(path);
は、現在構成されているディレクトリ(ルート)にpath
という名前のサブディレクトリを作成しようとします。このメソッドは、フルパスではなく単一のディレクトリ名を想定しています。また、チェックする必要のあるbool
の結果も返します。
dir.mkpath(path)
を呼び出して、指定されたサブディレクトリと、それにつながるすべての必要な親ディレクトリを作成しようとします。この場合も、結果をチェックして、成功したかどうかを確認する必要があります。