前提・実現したいこと
ファイルを列挙するプログラムを作成しています。
下記のコードで、サブフォルダの中も含めてすべてのファイルのURLを取得することができていますが、フォルダの内容によっては非常に時間がかかるため、進捗状況を知りたいと考えています。進捗は最終的にUIProgressViewなどに反映し、ユーザーに通知します。
(とはいえ、恐らくファイルを列挙し終えるまで正確な総数が分からないと思いますので、すべてのフォルダ階層に対する進捗を逐一取得するのではなく、例えばルートフォルダからひとつ下のフォルダのみ進捗を考慮し、それを全体の進捗に替えるなどの何らかの方法があると思いますが、具体的な実装に至っていません。)
上記の想定にこだわらず、ファイル列挙の進捗を得る方法があれば教えてください。
よろしくお願いします。
現状のソースコード
Swift
1if let enumerator = FileManager.default.enumerator(at: rootFolderURL, includingPropertiesForKeys: [.isRegularFileKey], options: [.skipsHiddenFiles, .skipsPackageDescendants]) { 2 for case let fileURL as URL in enumerator { 3 print(fileURL.path) 4 } 5}
補足情報(FW/ツールのバージョンなど)
Xcode 12.5
Swift 5
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。