In AppleScript se hai una stringa con una data e provi a convertirla in una classe di date
, si verificheranno errori in Finder e System Events. Esempio:
set testDate to "Friday, September 21, 2018 at 6:54:29 PM"
set testResult to date testDate
return testResult
rende:
Quandoinserisciilcodicesoprainuneventodisistema:
tellapplication"System Events"
set testDate to "Friday, September 21, 2018 at 6:54:29 PM"
set testResut to date testDate
return testResut
end tell
restituisce:
System Events got an error: Can’t get date "Friday, September 21, 2018 at 6:54:29 PM".
Cercare di posizionare il precedente in un Finder dice:
tell application "Finder"
set testDate to "Friday, September 21, 2018 at 6:54:29 PM"
set testResut to date testDate
return testResut
end tell
Finder got an error: Can’t get date "Friday, September 21, 2018 at 6:54:29 PM".
Che cosa dovrei usare per essere in grado di convertire una stringa di data in una data effettiva se sto già utilizzando System Events o Finder? L'unica alternativa che ho trovato è creare un gestore:
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
Come posso eseguire una conversione di date
in un evento di sistema o in un blocco di ricerca del Finder?
C'è stata una discussione nei commenti con la risposta fornita, ma date le specifiche del sistema di:
macOS High Sierra versione 10.13.6
e soluzione copiata:
tell application "System Events"
set testDate to "Friday, 21 September, 2018 at 6:54:29 PM"
set testResult to my (date testDate)
end tell
Aperto un nuovo Script Editor:
Soluzionedicodiceincollato:
Soluzionedicodicecompilato:
SoluzionedicodiceRan:
Il problema persiste ancora.