我看到Qt有一个漂亮的类名QUrlInfo。它有我想要使用的方法/功能,但我对如何使用这个类感到困惑。初始化似乎很奇怪和尴尬。 http://doc.qt.io/qt-4.8/qurlinfo.html#setLastModified
例如:
我想使用名为QUrlInfo :: setLastModified的方法,以便我可以为本地文件设置lastModified时间戳。 (也在共享的网络文件上,但现在我只想关注本地文件)。
假设本地文件是“D:/dir1/dir2/file.txt”。
当我只有一个项目的fullFileName(“D:/dir1/dir2/file.txt”)并希望使用QUrlInfo的GET和SET方法时,如何使用QUrlInfo?特别是我想要一个如何创建QUrlInfo对象并使用其QUrlInfo :: setLastModified方法的示例。
更深入的解释:
我的主要困惑来自于它的构造函数看起来像 以下
//Version 1: Problem is you must already have a QUrlInfo object.
QUrlInfo ( const QUrlInfo & ui )
//Version2: Problem is you must already know everything about the file.
//This makes QUrlInfo objects large set of GET methods useless for the most part
//since you must already know all the GET info prior to making a QUrlInfo object.
//Chicken and egg scenario. I don't see what is point of making a class that gets
//info... but... you must already know all that info to begin with or you can't
// initialize the the class.
QUrlInfo ( const QString & name, int permissions, const QString & owner,
const QString & group, qint64 size, const QDateTime & lastModified,
const QDateTime & lastRead, bool isDir, bool isFile, bool isSymLink,
bool isWritable, bool isReadable, bool isExecutable )
//Version3: Same problem as in version 2.
QUrlInfo ( const QUrl & url, int permissions, const QString & owner,
const QString & group, qint64 size, const QDateTime & lastModified,
const QDateTime & lastRead, bool isDir, bool isFile, bool isSymLink,
bool isWritable, bool isReadable, bool isExecutable )
答案 0 :(得分:2)
来自文档..
请注意,设置值不会影响QUrlInfo提供有关信息的基础资源;例如,如果在只读资源上调用setWritable(true),则唯一更改的是QUrlInfo对象,而不是资源。
此课程仅用于管理您已了解资源的信息。
可以使用QFile
设置一些属性,但这些属性是有限的,并且在文档中带有警告,因为行为取决于操作系统。您可能需要使用本机API来可靠地操作文件属性。