File.queryInfo

gio.file_info.FileInfo queryInfo(string attributes, gio.types.FileQueryInfoFlags flags, gio.cancellable.Cancellable cancellable = null)

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 [gio.types.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 [gio.types.IOErrorEnum.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 [gio.types.FileQueryInfoFlags.NofollowSymlinks] 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 [gio.types.IOErrorEnum.NotFound] error will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.

Parameters

attributesan attribute query string
flagsa set of #GFileQueryInfoFlags
cancellableoptional #GCancellable object, null to ignore

Returns

a #GFileInfo for the given file, or null

on error. Free the returned object with [gobject.object.ObjectWrap.unref].

Throws

[ErrorWrap]