我正在嘗試快速運行 applescript 代碼以從其他應用程式獲取資訊。這是一個示例代碼:
var applescript = "tell application "Xcode" \n set fileName to name of window 1 \n end tell"
var error: NSDictionary?
let scriptObject = NSAppleScript(source: applescript)
let output: NSAppleEventDescriptor = scriptObject!.executeAndReturnError(&error)
if (error != nil) {
print("error: \(String(describing: error))")
}
if output.stringValue == nil{
let empty = "the result is empty"
return empty
}
else {
return (output.stringValue?.description)!
}
但它總是向我回傳這樣的錯誤訊息:
error: Optional({
NSAppleScriptErrorBriefMessage = "Expected end of line but found unknown token.";
NSAppleScriptErrorMessage = "Expected end of line but found unknown token.";
NSAppleScriptErrorNumber = "-2741";
NSAppleScriptErrorRange = "NSRange: {25, 1}";
})
我認為它提到的未知標記是“\n”。因為當我在代碼中運行沒有“\n”的其他小程式時,沒有錯誤訊息。
有人可以幫我解決這個問題嗎?太感謝了!
uj5u.com熱心網友回復:
您必須轉義內部雙引號
let applescript = "tell application \"Xcode\" \n set fileName to name of window 1 \n end tell"
或者,使用多行語法更方便、更易讀
let applescript = """
tell application "Xcode"
set fileName to name of window 1
end tell
"""
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/415450.html
標籤:
