2015-08-17 60 views
0

這裏是我的槽:QFileInfo所有者組是空的

void MainWindow::writeOnFile(const QString &path) 
{ 
    // Get info files : 
    QFileInfo fileInfo(path); 
    QString name = fileInfo.fileName(); 
    QString lastModif = fileInfo.lastModified().toString(); 
    QString owner = fileInfo.owner(); 
    QString group = fileInfo.group(); 
    QString lastRead = fileInfo.lastRead().toString(); 
    QString created = fileInfo.created().toString(); 


    // Write on Logs : 
    QString filename = "C:\\Users\\Sherlock\\Desktop\\logs.txt"; 
    QFile file (filename); 
    if (file.open(QIODevice::WriteOnly | QIODevice::Append | QIODevice::Text)) 
    { 
     QTextStream stream(&file); 
     stream << "The file " << name 
       << " was first created on " << created 
       << ", was last read on " << lastRead 
       << " and was last modified on " << lastModif 
       << ". The owner is " << owner 
       << ". The group is " << group 
       << endl; 
    } 
} 

這是我的輸出:

文件younes.txt首次在LUN上創建。 août17 19:40:34 2015, 最後一次在倫敦朗讀。 août17 19:40:34 2015,最後修改於 mar。 août18 00:21:51 2015.店主是。該集團是

正如你所看到的,所有者不顯示。

我做錯了什麼?

+0

你在運行什麼操作系統? 「younes.txt」磁盤的文件系統是什麼? –

+0

操作系統是:'Windows 8'和文件系統是'NTFS' – Sherlock

+0

NTFS沒有類似unix的所有權和組的概念。這些成員只對unix文件系統有意義。 –

回答

1

在Windows [...]上返回一個空字符串。

因此,據記載group()這樣的行爲。

+0

我知道, owner()也一樣。我發佈了這個信息,以瞭解是否可能有提示/黑客獲取此信息。 – Sherlock

+0

@Sherlock group()永遠不會實現,因爲在Windows上,文件對象是無組織的。組是用戶的屬性,而不是文件的屬性。 'owner()'似乎還沒有被實現,隨意將它作爲Qt bugtracker中的一個功能請求(假設沒有這樣的請求存在),並且隨時向Qt提交補丁來實現它! –

相關問題