使用AppleScript将CSV文件读取为Array

use*_*816 4 csv applescript applescript-excel

我想将CSV文件作为2D数组读入,然后将其返回到CSV文件.假设这是我的CSV文件.这是一个excel文件和| 暗示相邻的细胞:

family | type
Doctor | Pediatrics
Engineer | Chemical
Run Code Online (Sandbox Code Playgroud)

据我所知,AppleScript上没有数组,只有列表和记录.如果使用XLSX文件更好,请告诉我.

ada*_*one 5

Nigel的CSV-to-list转换器是我见过的最好的......

http://macscripter.net/viewtopic.php?pid=125444#p125444

对于您的示例,请使用以下设置:

set csvText to "family | type
Doctor | Pediatrics
Engineer | Chemical"
csvToList(csvText, {separator:"|"}, {trimming:true})
Run Code Online (Sandbox Code Playgroud)

V2

set csvText to read "/Users/user1385816/Desktop/yourfile.csv"
csvToList(csvText, {}, {trimming:true})
Run Code Online (Sandbox Code Playgroud)


kop*_*hke 0

如果您的问题只是关于在 AppleScript 中对 CSV 数据建模,解决方案是使用如下记录列表:

\n\n
set csvData to {{family:"Doctor", type:"Engineer"}, {family:"Engineer", type:"Chemical"}}\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后你可以在循环中再次读出它repeat with aRow in csvData

\n\n

技术说明:AppleScript 列表被实现为向量,这意味着它们是有序的并且可以通过数字索引(从索引 1 开始)\xe2\x80\x93 访问它们,它们的行为与大多数其他语言中的数组非常相似。

\n