Пример использования Qt QUrlInfo - PullRequest
2 голосов
/ 16 февраля 2011

Я вижу, что Qt имеет классное имя класса QUrlInfo.У него есть методы / функции, которые я хотел бы использовать, но я не совсем понимаю, как использовать этот класс.Инициализация кажется очень странной и неловкой.http://doc.qt.io/qt-4.8/qurlinfo.html#setLastModified

Например:

Я хотел бы использовать его метод с именем QUrlInfo :: setLastModified, чтобы я мог установить метку времени lastModified для локального файла.(также для общего сетевого файла, но сейчас я просто хочу сосредоточиться на локальном файле).

Скажем, локальный файл - «D: /dir1/dir2/file.txt».

Как я могу использовать QUrlInfo, когда у меня есть только fullFileName ("D: /dir1/dir2/file.txt") элемента и вы хотите использовать методы Grl и 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 )

1 Ответ

2 голосов
/ 16 февраля 2011

Из документов ..

Обратите внимание, что значения настроек не влияют на базовый ресурс, о котором QUrlInfo предоставляет информацию;например, если вы вызываете setWritable (true) для ресурса, доступного только для чтения, то изменяется только объект QUrlInfo, а не ресурс.

Этот класс предназначен только для управления информацией, о которой вы уже знаетересурс.

Есть некоторые атрибуты, которые можно установить с помощью QFile, но они ограничены и сопровождаются предупреждениями в документах, поскольку поведение зависит от ОС.Скорее всего, вам потребуется использовать нативные API для надежного управления атрибутами файлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...