我正在尝试枚举属性列表文件 (.plist) 的最近应用程序 > CustomListItems 属性列表项的数组,但在语法上遇到了一些困难:
tell application "System Events"
set the plist_path to "~/Library/Preferences/com.apple.recentitems.plist"
set the plist_file to property list file plist_path
set itemNodes to property list item "CustomListItems" of property list item "RecentApplications" of plist_file
repeat with i from 1 to number of items in itemNodes
set itemNode to item i of itemNodes
display dialog text of property list item "Name" of property list item itemNode
end repeat
end tell
我收到一条错误消息:
“系统事件出现错误:无法使属性列表项的属性列表项 \"Name\" 的每个文本(属性列表项的属性列表项 \"CustomListItems\" 属性列表文件的内容 \"RecentApplications\" \"Macintosh HD:Users:craibuc:Library:Preferences:com.apple.recentitems.plist\") 转换为字符串类型。属性列表项“名称”的每个文本的数字-1700(属性列表项“RecentApplications”的属性列表项“CustomListItems”的属性列表文件“Macintosh HD:Users:craibuc:Library:Preferences:com .apple.recentitems.plist") 到字符串
此外,如果我将代码更改为:
repeat with i from 1 to number of items in itemNodes
display dialog i
end repeat
我得到一个对话框。换句话说,它似乎并没有检查数组本身。
捕获 PLI 数组的正确方法是什么?