動機付けの例:
前のセッションで、アプリケーションはユーザーが選択したパスを保存しました。その間に、そのパスが削除、移動、名前変更、またはドライブのアンマウントされた可能性があります。アプリケーションは、ユーザーが を介してパスを参照できるようにしたいと考えてい
QFileDialog
ます。ユーザーの利便性のために、以前のパスがファイル ダイアログの開始ディレクトリとして渡されます。これは、おそらく新しいパスが古いパスの近くにある可能性が高いためです。残念ながら、QFileDialog
存在しない開始パスが指定された場合、デフォルトで現在の作業ディレクトリになります。これは通常、アプリケーションのインストール ディレクトリであるため、ユーザーにとって役立つ可能性はほとんどありません。そのため、パスを に渡す前に、実際に存在するディレクトリを指すように古いパスを前処理したいと考えてい
QFileDialog
ます。古いパスが存在しない場合は、存在する最も近いディレクトリに置き換えます。
では、ファイル パス (存在する場合も存在しない場合もあります) を取得し、ファイル システムに実際に存在するものが見つかるまで、そのパスを「上方向」に検索するにはどうすればよいでしょうか。