Après avoir enregistré un fichier, je veux ouvrir le dossier du fichier enregistré. Comment puis-je le faire ? Merci beaucoup !
Réponses
Trop de publicités?Si je comprends bien votre question, vous voulez ouvrir le dossier dans lequel quelque chose a été enregistré dans le Finder ?
Cela devrait faire l'affaire -- cela suppose que vous avez une référence au savePanel.
NSURL *fileURL = [savePanel URL];
NSURL *folderURL = [fileURL URLByDeletingLastPathComponent];
[[NSWorkspace sharedWorkspace] openURL: folderURL];
Si vous commencez avec un NSString
contenant le chemin, alors commencez par :
NSURL *fileURL = [NSURL fileURLWithPath: stringContainingPath];
Il serait encore mieux de ne pas se contenter d'ouvrir le dossier, mais de sélectionner le fichier enregistré. NSWorkspace peut le faire pour vous :
[[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:
@[ URLToSavedFile ]];
L'argument est un tableau d'URLs, donc si vous n'avez qu'un seul fichier à révéler, vous passez simplement un tableau d'un objet.
Si, pour une raison ou une autre, vous visez une version de Mac OS X antérieure à 10.6, utilisez plutôt l'ancienne méthode basée sur le chemin d'accès :
[[NSWorkspace sharedWorkspace] selectFile:pathToSavedFile
inFileViewerRootedAtPath:@""];
(Vous voulez passer une chaîne vide pour le second argument afin que le Finder réutilise une fenêtre de Finder existante pour le dossier, s'il y en a une).