Find out "Owner" of a file as displayed by Windows Explorer

36 次查看(过去 30 天)
I've seen some files on the FEX that allow you to get creation date / last modified date of a particular file
but does anybody know how to get the name of the "Owner" of a file? (Which is another thing displayed by Windows Explorer so it has to be accessible somehow??)
  3 个评论
Darin McCoy
Darin McCoy 2012-6-8
You can find details on how to show the Owner column here...
http://support.microsoft.com/kb/310297
Jan
Jan 2012-6-9
Thanks, Darin! Now I understand where you find the owner.

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2012-6-9
Here's one way:
fileName = 'test.m'; % Some file you're interested in.
commandString = sprintf('dir %s /Q > owner_of_%s.txt', ...
fileName, fileName);
system(commandString)
filebrowser; % Optional - Show current folder panel
% Now open the txt file you just created
% and parse it to find the owner.

更多回答(2 个)

Jan
Jan 2012-6-9
You can use .NET:
finfo = System.IO.FileInfo(FileName);
dummyAccount = System.Security.Principal.NTAccount('dummy');
Owner = char(finfo.GetAccessControl.GetOwner(GetType(dummyAccount)).Value.ToString);
There must be a more direct method to get the NTAccount type instead of creating a dummy account.
The Windows API methods are not trivial and I hesitate to implement them in a function similar to GetFileTime.
  2 个评论
Darin McCoy
Darin McCoy 2012-6-11
not sure how to accept both your answers? but they both worked (so i accepted Image's and voted for yours??)....thanks for the help!
Jan
Jan 2012-6-11
The .NET method includes the host name also, such that file owners of network drives are identified uniquely. The DIR approach does not handle this and demands for a complicated parsing of a text file.

请先登录,再进行评论。


scivision
scivision 2024-9-18
The owner of a file can be found using built-in Java
owner = string(java.nio.file.Files.getOwner(java.io.File(path).toPath(), java.nio.file.LinkOption.values));

类别

Help CenterFile Exchange 中查找有关 File Operations 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by