g_file_enumerate_children (
  GFile* file,
  const char* attributes,
  GFileQueryInfoFlags flags,
  GCancellable* cancellable,
  GError** error


Gets the requested information about the files in a directory. The result is a GFileEnumerator object that will give out GFileInfo 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::user”. The standard attributes are available as defines, like G_FILE_ATTRIBUTE_STANDARD_NAME. G_FILE_ATTRIBUTE_STANDARD_NAME should always be specified if you plan to call g_file_enumerator_get_child() or g_file_enumerator_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 G_IO_ERROR_CANCELLED will be returned.

If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned. If the file is not a directory, the G_IO_ERROR_NOT_DIRECTORY error will be returned. Other errors are possible too.


attributes const char*

An attribute query string.

 The data is owned by the caller of the function.
 The value is a NUL terminated UTF-8 string.
flags GFileQueryInfoFlags

A set of GFileQueryInfoFlags.

cancellable GCancellable

Optional GCancellable object, NULL to ignore.

 The argument can be NULL.
 The data is owned by the caller of the function.
error GError **
  The return location for a GError*, or NULL.

Return value

Returns: GFileEnumerator

A GFileEnumerator if successful, NULL on error. Free the returned object with g_object_unref().

 The caller of the method takes ownership of the data, and is responsible for freeing it.