Gets the requested information about specified this.
The result is a FileInfo 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:GFile: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.
Example: FileInfo, sync:
public static int main (string[] args) {
if (args.length != 2) {
print ("%s FILE\n", args[0]);
return 0;
}
try {
File file = File.new_for_commandline_arg (args[1]);
FileInfo info = file.query_info ("standard::icon", 0);
Icon icon = info.get_icon ();
print ("%s\n", icon.to_string ());
} catch (Error e) {
print ("Error: %s\n", e.message);
}
return 0;
}
valac --pkg gio-2.0 GLib.File.query_info.vala
this |
input File |
attributes |
an attribute query string |
flags |
a set of FileQueryInfoFlags |
cancellable |
optional Cancellable object, null to ignore |
a FileInfo for the given this, or null on error. Free the returned object with unref. |