类
GioFileInfo
描述 [源码]
final class Gio.FileInfo : GObject.Object
{
/* No available fields */
}
存储由GFile引用的文件系统对象的信息。
用于操作文件的元数据的基本功能。GFileInfo实现了获取所有文件都应该包含的信息的方法,并允许操作扩展属性。
有关GIO如何处理文件属性的更多信息,请参阅文件属性文档。
要获取GFile的GFileInfo,请使用g_file_query_info()(或其异步变体)。要获取文件输入或输出流的GFileInfo,请使用g_file_input_stream_query_info()或g_file_output_stream_query_info()(或它们的异步变体)。
要更改文件的实际属性,您应在GFileInfo中设置属性,并在GFile上调用g_file_set_attributes_from_info()或g_file_set_attributes_async()。
但是,并非所有属性都可以更改。例如,无法通过g_file_info_set_size()更改文件的实际大小。您可以通过调用g_file_query_settable_attributes()和g_file_query_writable_namespaces()在运行时发现特定文件的可设置属性。
直接访问器,如g_file_info_get_name(),比通用属性访问器(如g_file_info_get_attribute_byte_string())稍加优化。只有当在紧密循环中调用API时,此优化才会产生影响。
在创建GFileInfo时没有指定其所需文件属性时调用这些访问器是错误的。使用g_file_info_has_attribute()或g_file_info_list_attributes()检查为GFileInfo指定的属性。
GFileAttributeMatcher允许搜索GFileInfo中的属性。
实例方法
g_file_info_copy_into
首先清除dest_info中的所有[GFileAttribute][gio-GFileAttribute],然后将所有文件属性从src_info复制到dest_info。
g_file_info_get_deletion_date
返回表示文件删除日期的GDateTime,来自G_FILE_ATTRIBUTE_TRASH_DELETION_DATE。如果G_FILE_ATTRIBUTE_TRASH_DELETION_DATE属性未设置,则返回NULL。
自版本2.36起
g_file_info_get_size
获取文件的大小(字节数)。大小是通过G_FILE_ATTRIBUTE_STANDARD_SIZE属性的值检索的,并在返回结果之前从#guint64转换为#goffset。
g_file_info_set_access_date_time
将文件信息中的 G_FILE_ATTRIBUTE_TIME_ACCESS 和 G_FILE_ATTRIBUTE_TIME_ACCESS_USEC 属性设置为给定的日期/时间值。
since: 2.70
g_file_info_set_attribute_status
设置属性键的属性状态。这仅由实现 g_file_set_attributes_from_info() 或类似函数的外部代码需要。
自版本2.22起
g_file_info_set_creation_date_time
将文件信息中的 G_FILE_ATTRIBUTE_TIME_CREATED 和 G_FILE_ATTRIBUTE_TIME_CREATED_USEC 属性设置为给定的日期/时间值。
since: 2.70
g_file_info_set_is_hidden
根据 is_hidden 设置 GFileInfo 中的“is_hidden”属性。请参阅 G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN。
g_file_info_set_is_symlink
根据 is_symlink 设置 GFileInfo 中的“is_symlink”属性。请参阅 G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK。
g_file_info_set_modification_date_time
将文件信息中的 G_FILE_ATTRIBUTE_TIME_MODIFIED 和 G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC 属性设置为给定的日期/时间值。
自版本2.62起
g_file_info_set_modification_time
将文件信息中的 G_FILE_ATTRIBUTE_TIME_MODIFIED 和 G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC 属性设置为给定的时值。
已弃用:2.62
g_file_info_set_symbolic_icon
为给定的 GFileInfo 设置符号图标。请参阅 G_FILE_ATTRIBUTE_STANDARD_SYMBOLIC_ICON。
自版本2.34起
信号
从 GObject 继承的信号(1)
GObject::notify
当对象中的一个属性通过 g_object_set_property(), g_object_set() 等设置其值时,将发出 notify 信号。