以下のようなコードでダウンロードフォルダーにファイルを作成しています。

var newFile = await DownloadsFolder.CreateFileAsync(fileName, CreationCollisionOption.GenerateUniqueName);

ファイル名が重複したときには自動的に別名になるので良いのですが、その前にすでにファイルが存在するかをチェックして警告表示しようと思っています。

どのようにすれば DownloadsFolder でのファイル存在チェックができるのでしょうか?

  • ターゲット: UWP (Windows10, version 1809)
  • 開発環境: VisualStudio 2017

(2019-02-03 追記)

System.IO.File.Exists() を使用した方法

ApplicationData.Current.LocalFolder では成功しますが、DownloadsFolderは権限がないようで期待した結果になりません。

  • DownloadsFolder のパスを取得する方法がない (CreateFileしてそのパスを得ることはできる)
  • DownloadsFolder では System.IO.File.Exists() が常に false を返す。
  • DownloadsFolder では System.IO.Directory.GetFiles() はUnauthorizedAccessException例外になる

DownloadsFolder は出力に特化したものということで、直接のファイル存在チェックは難しいように思えてきました。