Re: Sort Array by Column X
Re: Sort Array by Column X
- Subject: Re: Sort Array by Column X
- From: Steve Thompson <email@hidden>
- Date: Wed, 21 Jul 2010 14:29:55 +0100
The file extension CSV stands for "comma separated values" so it's fair to assume that the file contains values separated by commas. Although quotes are used to delimit strings you can't guarantee (in "standard" files) that every field will have quotes round it. So you couldn't reliably use "," as a delimiter.
If all your text fields have quotes round them then the sort would still work as "a, "b, "c and so on would sort in the same order as if the quotes weren't there.
Alternatively, get rid of the quotes before the sort
set column_id to 2 set posix_path_to_csv to "/Users/steve/testfile.csv"
set sorted_file to do shell script ("tr -d \\\" < " & posix_path_to_csv & " | sort -n -t , -k " & column_id & " ")
Steve
On 21 Jul 2010, at 13:46, Richard Lake wrote: Didn't try this as your delimiter is simply a comma whereas my fields having quote marks surrounding them.
set column_id to 5 set posix_path_to_csv to POSIX path of ((path to scripts folder) & "formdb.csv" as string) set delimiter to quoted form of (quote & "," & quote)
set sorted_file to do shell script ("sort -n -t " & delimiter & " -k " & column_id & " " & posix_path_to_csv)
Trying alternative delimiter strings, but keep facing the same error:
error "sort: multi-character tab `\",\"'" number 2
|
_______________________________________________
Do not post admin requests to the list. They will be ignored.
AppleScript-Users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
Archives: http://lists.apple.com/archives/applescript-users
This email sent to email@hidden