Virtual Method

GioFilequery_info

Declaration [src]

GFileInfo*
query_info (
  GFile* file,
  const char* attributes,
  GFileQueryInfoFlags flags,
  GCancellable* cancellable,
  GError** error
)

Description [src]

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. In particular this means that if a file is inaccessible (due to being in a folder with restrictive permissions), for example, you can expect the returned GFileInfo to have very few attributes set. You should check whether an attribute is set using g_file_info_has_attribute() before trying to retrieve its value.

It is guaranteed that if any of the following attributes are listed in attributes, they will always be set in the returned GFileInfo, even if the user doesn’t have permissions to access the file:

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 might 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 file system the file is on.

Parameters

attributes

Type: const char*

An attribute query string.

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

Type: GFileQueryInfoFlags

Flags to affect the query operation.

cancellable

Type: GCancellable

Optional cancellable object.

The argument can be NULL.
The data is owned by the caller of the method.
error

Type: GError **

The return location for a recoverable error.

The argument can be NULL.
If the return location is not NULL, then you must initialize it to a NULL GError*.
The argument will be left initialized to NULL by the virtual function if there are no errors.
In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it.

Return value

Type: GFileInfo

A GFileInfo for the given file.

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