11#include <QScopedPointer>
21class DFileInfoPrivate;
25 explicit DFileInfo(
const QUrl &url, QObject *parent =
nullptr);
32 DTK_CORE_NAMESPACE::DExpected<QUrl>
url()
const;
36 DTK_CORE_NAMESPACE::DExpected<FileQueryInfoFlags>
queryInfoFlag()
const;
42 DTK_CORE_NAMESPACE::DExpected<bool>
hasAttribute(
const QByteArray &key)
const;
43 DTK_CORE_NAMESPACE::DExpected<bool>
exists()
const;
44 DTK_CORE_NAMESPACE::DExpected<bool>
refresh();
45 DTK_CORE_NAMESPACE::DExpected<Permissions>
permissions()
const;
57 QSharedDataPointer<DFileInfoPrivate> d;
处理文件异步操作的结果
Definition dfilefuture.h:18
用以获取文件的信息
Definition dfileinfo.h:23
DFileFuture * permissionsAsync(int ioPriority, QObject *parent=nullptr)
异步的方式获取文件权限属性
DTK_CORE_NAMESPACE::DExpected< bool > hasAttribute(AttributeID id) const
查询是否含有某个id的属性
DFileFuture * attributeAsync(const QByteArray &key, const AttributeType type, int ioPriority, QObject *parent=nullptr) const
异步的方式获取文件属性
DTK_CORE_NAMESPACE::DExpected< bool > refresh()
重新根据查询属性来获取文件信息,应在queryAttributes发生变动后调用
DTK_CORE_NAMESPACE::DExpected< QByteArray > queryAttributes() const
获取已定义的查询属性
DTK_CORE_NAMESPACE::DExpected< bool > hasAttribute(const QByteArray &key) const
查询是否含有key对应的属性
DTK_CORE_NAMESPACE::DExpected< bool > initQuerier()
根据查询属性和标志对文件信息进行初始化
DTK_CORE_NAMESPACE::DError lastError() const
获取当前文件操作的错误码
void setQueryInfoFlags(const FileQueryInfoFlags flags)
设置查询文件信息时的标志
DTK_CORE_NAMESPACE::DExpected< bool > exists() const
文件信息是否存在
DFileInfo(const DFileInfo &other)
复制构造函数, 通过 other 构造一个新的 DFileInfo 对象
DFileInfo & operator=(const DFileInfo &other)
重载赋值操作,创建一个相同的对象
DTK_CORE_NAMESPACE::DExpected< FileQueryInfoFlags > queryInfoFlag() const
获取已定义的查询信息的标志
DFileInfo & operator=(DFileInfo &&other) noexcept
以右值引用的方式进行赋值操作
DFileFuture * attributeAsync(AttributeID id, int ioPriority, QObject *parent=nullptr) const
异步的方式获取文件属性
DTK_CORE_NAMESPACE::DExpected< QVariant > attribute(AttributeID id, bool *success=nullptr) const
根据输入的id获取文件对应的属性
DFileFuture * initQuerierAsync(int ioPriority, QObject *parent=nullptr)
异步的方式初始化查询
DFileFuture * existsAsync(int ioPriority, QObject *parent=nullptr) const
异步的方式查询文件是否存在
DTK_CORE_NAMESPACE::DExpected< QVariant > attribute(const QByteArray &key, const AttributeType type) const
根据输入的键值获取对应的文件属性
void setQueryAttributes(const QByteArray &attributes)
设置查询属性
DFileInfo(const QUrl &url, QObject *parent=nullptr)
构造函数,通过文件的 url 构造一个新的 DFileInfo 对象
DTK_CORE_NAMESPACE::DExpected< Permissions > permissions() const
获取当前文件的权限属性
DFileFuture * refreshAsync(int ioPriority, QObject *parent=nullptr)
异步的方式刷新文件信息
DFileInfo(DFileInfo &&other) noexcept
移动构造函数, 通过 other 构造一个新的 DFileInfo 对象
DTK_CORE_NAMESPACE::DExpected< QUrl > url() const
获取当前对象管理的文件的url字符串
FileQueryInfoFlags
查询文件信息的标志
Definition dtkiotypes.h:201
AttributeID
文件属性(ID)
Definition dtkiotypes.h:47
AttributeType
文件属性类型
Definition dtkiotypes.h:188