Tengo un servicio que crea un nuevo archivo .txt o .rtf. El Servicio guarda este archivo en el disco. El nombre de archivo de este archivo es proporcionado por el usuario a través de un diálogo de entrada. Pero, he encontrado que si el nombre del archivo contiene una barra diagonal ( /
), entonces el archivo no se creará.
Supongamos que me gustaría crear un archivo titulado: Este es mi / file.txt .
Puedo crear este archivo manualmente en Finder.app sin error, lo que indica que el sistema operativo permite barras diagonales en los nombres de archivo (a diferencia de los dos puntos, por ejemplo).
Aquí hay un código (es decir, un fragmento de mi Servicio) para reproducir el error:
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 ejecuta el código anterior, recibirá el error:
File / Users / Me / Desktop / Este es mi / file.txt no se encontró. número -43