Ich muss nur den Namen des Besitzers einer Datei auf dem Mac mit Java wissen - wie kann ich es bekommen? Vielen Dank!Wie erhalte ich den Namen des Eigentümers einer Datei in Java unter OSX?
6
A
Antwort
4
Dieser böse ist. Es gibt keine Standardmethode, um den Besitzer einer Datei zu erhalten (mindestens bis einschließlich Java 6, was die aktuelle Produktionsversion für OSX ist). Der einfachste Weg ist, einen stat
mit ProcessBuilder
mit dem Namen der Datei als Argument auszuführen und dann das Ergebnis zu parsen, das auf dem Standard-Ausgabekanal vom Subprozess zurückgegeben wird. Vorsicht ist beim Parsen des Ergebnisses geboten, da Benutzernamen auf OSX Leerzeichen enthalten können.
Alternativ verwenden Sie JNI.
16
Das ist nicht möglich bis Java 7. Mit Java 7 könnten Sie dazu Files#getOwner()
verwenden.
Path path = Paths.get("/path/to/file.ext");
UserPrincipal owner = Files.getOwner(path);
String username = owner.getName();
Vor Java 7, Ihre beste Wette einen Befehl oder JNI in Kombination mit einiger Plattform nativen Code ausgeführt wird.
Siehe auch:
Verwandte Themen
- 1. Erhalte den Namen des Benutzers in yii2
- 2. Erhalte den Namen des Primärschlüssels der Tabelle
- 3. Talend: Erhalte den Namen der Datei von tFileInputDelimited in tSystem
- 4. Wie erhalte ich aktuelle Modifier-Zustände mit FireMonkey unter OSX?
- 5. Wie erhalte ich den Localhost-Namen in PowerShell?
- 6. Wie erhalte ich den Namen einer Datei, die mit einem Stream in C# generiert wurde?
- 7. Erhalte den Namen einer std :: function
- 8. Java: Erhalte Dateierweiterung mit "." in seinem Namen
- 9. Wie installiere ich eine LaTeX .sty Datei unter OSX?
- 10. Erhalten DB Name des Eigentümers in PostgreSql
- 11. Erhalte den Namen eines Parameters
- 12. Wie kann ich den Namen einer Datei in Dart bekommen?
- 13. Wie setze ich den Laufzeitpfad (-rpath) einer ausführbaren Datei mit gcc unter Mac OSX?
- 14. TCL erhalte den proc-Namen, in dem ich bin
- 15. Wie kann ich die Erlaubnis des Eigentümers für den Weltraum in Alfresco entfernen?
- 16. Wie kann ich Eclipse unter OSX Java 1.6 verwenden?
- 17. Java JFrame nicht aktualisiert unter Mac OSX
- 18. Wie erhalte ich den Namen des Ziels, das gerade in Xcode läuft?
- 19. git-checkout ältere Revision einer Datei unter einem neuen Namen
- 20. Erhalte Datei Schöpfer/Besitzer Attribute in Java
- 21. Wie erhalte ich den Namen der Codesignaturidentität aus einem Bereitstellungsprofil?
- 22. Erhalte den Namen eines Pandas DataFrame [Python]
- 23. Erhalte den Zielverzeichnispfad in Maven (Java)
- 24. Erhalte den vollständig qualifizierten Namen einer Python-Klasse (Python 3.3+)
- 25. Wie erhalte ich die Gesamtzeit einer Audiodatei in Java?
- 26. Erhalte den Wert des Wxpython-Schiebereglers unter dem Mausklick
- 27. Wie erhalte ich den Hash des ipfs-Objekts?
- 28. Wie erhalte ich ein Dateisymbol in Java?
- 29. Wie erhalte ich den Namen einer Funktion oder Methode aus einer Python-Funktion oder -Methode?
- 30. Neuinstallation von Java 7 JDK unter OSX