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


Gets the requested information about specified file. The result is a GFileInfo object that contains key-value attributes (such as the type or size of the file).

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.

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.

For symlinks, normally the information about the target of the symlink is returned, rather than information about the symlink itself. However if you pass G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS in flags the information about the symlink itself will be returned. Also, for symlinks that point to non-existing files the information about the symlink itself will be returned.

If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.


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: GFileInfo

A GFileInfo for the given file, or 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.