J'ai un service qui crée un nouveau fichier .txt ou .rtf. Le service enregistre ce fichier sur le disque. Le nom de ce fichier est fourni par l'utilisateur via une boîte de dialogue de saisie. Mais j'ai constaté que si le nom de fichier contient une barre oblique ( /
), alors le fichier ne sera pas créé.
Supposons que je veuille créer un fichier intitulé : C'est mon / fichier.txt .
Je peux créer ce fichier manuellement dans Finder.app sans erreur, ce qui indique que le système d'exploitation autorise les barres obliques dans les noms de fichiers (contrairement aux deux points, par exemple).
Voici un extrait de code (c'est-à-dire un extrait de mon service) pour reproduire l'erreur :
set theCustomFilename to text returned of (display dialog "Enter filename:
" default answer "This is my /file")
set thePath to "/Users/Me/Desktop/"
set theFileExtension to ".txt"
set theCustomFilePathname to thePath & theCustomFilename & theFileExtension
try
set fileHandle to open for access theCustomFilePathname with write permission
write "This is the document text." to fileHandle
close access fileHandle
on error eStr number eNum
display dialog eStr & " number " & eNum buttons {"OK"} default button 1 with title "File I/O Error..." with icon caution
try
close access fileHandle
end try
end try
Si vous exécutez le code ci-dessus, vous obtiendrez l'erreur suivante :
Le fichier /Users/Me/Desktop/This is my / file.txt n'a pas été trouvé. nombre -43