En AppleScript si tienes una cadena con una fecha e intentas convertirla en una clase de date
se producirá un error en el Finder y en los Eventos del Sistema. Ejemplo:
set testDate to "Friday, September 21, 2018 at 6:54:29 PM"
set testResult to date testDate
return testResult
rinde:
Al colocar el código anterior en un Evento de Sistema:
tell application "System Events"
set testDate to "Friday, September 21, 2018 at 6:54:29 PM"
set testResut to date testDate
return testResut
end tell
devoluciones:
Eventos del sistema tiene un error: No se puede obtener la fecha "viernes, 21 de septiembre de 2018 a las 18:54:29".
Intentando colocar lo anterior en un relato del Finder:
tell application "Finder"
set testDate to "Friday, September 21, 2018 at 6:54:29 PM"
set testResut to date testDate
return testResut
end tell
El buscador tiene un error: No se puede obtener la fecha "viernes 21 de septiembre de 2018 a las 18:54:29".
¿Qué debo utilizar para poder convertir una cadena de fechas en una fecha real si ya estoy utilizando Eventos del Sistema o Finder? La única alternativa que he encontrado es crear un manejador:
tell application "System Events"
set testDate to "Friday, September 21, 2018 at 6:54:29 PM"
return my stringDate(testDate)
end tell
on stringDate(theString)
set attempt to date theString
return attempt
end stringDate
¿Cómo puedo hacer un date
en un bloque de eventos del sistema o del Finder?
Se ha discutido en los comentarios con el suministrado responder pero dadas las especificaciones del sistema de:
MacOS High Sierra versión 10.13.6
y la solución copiada:
tell application "System Events"
set testDate to "Friday, 21 September, 2018 at 6:54:29 PM"
set testResult to my (date testDate)
end tell
Abre un nuevo editor de script:
Solución de código pegado:
Solución de código compilado:
Solución del código de la carrera:
El problema persiste.