Gets the requested information about the files in a directory.
The result is a [class@FileEnumerator] object that will give out [class@FileInfo] objects for all the files in the directory.
The attributes value is a string that specifies the file attributes that should be gathered. It is not an error if it's not
possible to read a particular requested attribute from a file - it just won't be set. attributes should be a comma-separated
list of attributes or attribute wildcards. The wildcard `*` means all attributes, and a wildcard like `"standard::*"` means all attributes
in the standard namespace. An example attribute query be `"standard::*,owner:GFile:user"`. The standard attributes are
available as defines, like [const@FILE_ATTRIBUTE_STANDARD_NAME]. [const@FILE_ATTRIBUTE_STANDARD_NAME] should always be specified if you
plan to call [method@FileEnumerator.get_child] or [method@FileEnumerator.iterate] on the returned enumerator.
If cancellable is not `NULL`, then the operation can be cancelled by triggering the cancellable object from another thread.
If the operation was cancelled, the error [error@Gio.IOErrorEnum.CANCELLED] will be returned.
If the file does not exist, the [error@Gio.IOErrorEnum.NOT_FOUND] error will be returned. If the file is not a directory, the [ error@Gio.IOErrorEnum.NOT_DIRECTORY] error will be returned. Other errors are possible too.
| this |
input File |
| attributes |
an attribute query string |
| flags |
a set of FileQueryInfoFlags |
| cancellable |
optional Cancellable object, null to ignore |
|
A FileEnumerator if successful, null on error. Free the returned object with [method@GObject.Object.unref]. |