• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Ich habe ein Verständnisproblem mit Klassen, Coercion und dem Auslesen von Dateien aus Listen...

mi.k

Erdapfel
Registriert
12.02.15
Beiträge
2
Ich habe ein Script, bei dem Dateien eingelesen werden:

Entweder ein ganzer Folder:

set theFolder to choose folder-- ergibt alias

oder einzelne Files:

set allFiles to (choose file with multiple selections allowed) -- ergibt liste mit aliases

Wenn ich einen Folder habe, kann ich einfach die Dateien nach Typ sortieren:

tell application "Finder"
set theLabeledJPGs to every file of theFolder whose (name extension is "jpg" and the label index is not equal to 0) -- ergibt liste mit document files

Wenn ich aber mit

set allFiles to (entire contents of theFolder) -- ergibt liste mit document files

eine Liste erstelle, kann ich nicht mit z.B.

set theLabeledJPGs to every item of allFiles whose (name extension is "jpg" and the label index is not equal to 0)

die Dateien nicht auswerten. Ich könnte jetzt eine Schleife nutzen aber
meine Frage bezieht sich auf das "Warum" es nicht geht und ich wäre dankbar für eine Erklärung.

Ich stehe gerade auf dem Schlauch...

Danke

mik
 

Pill

Adams Parmäne
Registriert
07.07.12
Beiträge
1.310
So geht's:

set allFiles to a reference to entire contents of theFolder

Das dürfte daran liegen, dass entire contents eine Property ist (erkennbar an der violetten Farbe). Auf macscripter.net gibt's einen Haufen Beiträge zum Thema reference objects und properties
 

sedna

Galloway Pepping
Registriert
22.10.08
Beiträge
1.359
Hallo,

in AppleScript ist es nicht möglich, Listen mit every ...whose zu durchsuchen.

Gruß
 

mi.k

Erdapfel
Registriert
12.02.15
Beiträge
2
@Pill: set allFiles to entire contents of theFolder funktioniert ja, aber Danke.

@sedna: Dankeschön, das ist es und hat mir geholfen!

Ich habe nach Deinem Posting in Applescript 1-2-3 auch den schönen Satz gefunden: "The most widely bemoaned omission in the current version of AppleScript is the inability to use the filter reference form with AppleScript lists. AppleScript lists simply don’t support whose clauses."

Gruß
mik