weiß wer, wie man parseCSV benutzt?

klauskobald

Neues Mitglied
Thread Starter
Dabei seit
27.06.2013
Beiträge
9
Reaktionspunkte
0
ich kriege beim parsen einer einfachen Zeile mit 2 Elementen einen Error 1708

set lstFieldsinRow to parseCSV("Deceiver,Ghost-Youth")

Result:
error
"Finder got an error: Can’t continue parseCSV." number -1708


Ich habe auch probiert die 2 Columns nochmal in " zu stecken. Geht auch nicht.
 
Woher stammt der Code?

parseCSV ist kein AppleScript-Befehl. Soll das der Aufruf einer benutzerdefinierten Funktion sein?

Dann müsste es in Deinem Code auch einen Handler dafür geben.


on parseCSV(csvItemsList)
-- ... der Code um CSV zu Parsen und zu trennen ...
end parseCSV()
 
  • Gefällt mir
Reaktionen: kermitd
Doch, parseCSV ist eine existierende Funktion. Nur sie parsed meine CSV Zeile nicht. In dem Fall probiere ich einfach fixen string. Im endeffekt kommen die Zeilen dann aus dem Clipboard.
 
Das wäre mir neu … soll das JavaScript sein?
 
Vielleicht von hier kopiert: https://macscripter.net/viewtopic.php?id=44517 ? Da findet sich ein entsprechender Handler. Einfach mit ins Skript kopieren.

In den Standard Additions von AppleScript gibt es den Befehl jedenfalls nicht.
 
  • Gefällt mir
Reaktionen: mausfang
egal: neuer Ansatz: ich habe nun ein php script, das alles korrekt parsed und dann ein apple script für genau ein item aufruft.
Das klappt. Nun gibt es aber wieder Probleme mit single quotes in einem string:

tell application "Music"
activate
tell playlist "Library" of source "Library"
duplicate (every track whose name starts with "Aztec (Ruby Skye's Club Rework)") to "CLIPBOARD"
end tell
end
tell

produziert error:
error
"Music got an error: Can’t set \"CLIPBOARD\" to every track of playlist \"Library\" of source \"Library\" whose name starts with \"Aztec (Ruby Skye's Club Rework)\"." number -10006 from "CLIPBOARD"

mit strings ohne ' geht es. Ich habe auch escapen mit \ probiert. das hilft aber auch nix.
 
Man kann nur vermuten was Du tun möchtest. Falls Du etwas in die Zwischenablage kopieren möchtest, musst du folgenden Befehl nutzen (Skripteditor -> Bibliothek -> Funktionsverzeichnis für StandardAdditions)
set the clipboard to v : Place data on an application’s clipboard. Use inside a ‘tell’ block and activate the application first

set the clipboard to any : the data to place on the clipboard
 
Hi,
das mit dem clipboard hab ich alles gelöst. (hier ist CLIPBOARD einfach eine Playlist in music - bitte ignorieren - darum geht es nicht)
Es geht nur um die Zeile mit dem String
every track whose name starts with "Aztec (Ruby Skye's Club Rework)"
hier gibt es einen error weil da ein single quote ist. Ich will wissen, was man tun muss, damit das single quote nicht einen error verursacht.
 
OK - stopp - es wird immer irrgeistiger:
"starts with" geht anscheinend gar nicht. wenn ich also stattdessen is verwende:
every track whose name is "Aztec (Ruby Skye's Club Rework)"
geht es auch nicht.
Wenn ich aber ein Leerzeichen irgendwo im String entferne, dann gibt es keinen Error.
every track whose name is "Aztec (Ruby Skye'sClub Rework)" (Natürlich wird der Song aber nicht gefunden.)
Was passiert da?
 
Hi,
das mit dem clipboard hab ich alles gelöst. (hier ist CLIPBOARD einfach eine Playlist in music - bitte ignorieren - darum geht es nicht)
Es geht nur um die Zeile mit dem String
every track whose name starts with "Aztec (Ruby Skye's Club Rework)"
hier gibt es einen error weil da ein single quote ist. Ich will wissen, was man tun muss, damit das single quote nicht einen error verursacht.
Wenn „CLIPBOARD“ eine playlist sein soll, fehlt da noch ein playlist keyword vor dem string. So wie Du es geschrieben hast, kann es eigentlich nicht funktionieren, bzw. nur vermeintlich wenn er keinen Track findet. Stattdessen etwa so:
Code:
tell source "Library"
duplicate every track whose name starts with "test" to playlist "CLIPBOARD"
end
 
  • Gefällt mir
Reaktionen: appelg4
"playlist" ist optional - geht auch ohne.
Ich versuche es nochmal: Dieser Suchbegriff verursacht den Error:
"Aztec (Ruby Skye's Club Rework)"
Probier es mal aus!

"Test" geht immer - Real World Situation ist das Problem ;-)
 
Ich Versuch es noch mal … Du musst den Single Quote „escapen“ …
 
Ich Versuch es noch mal … Du musst den Single Quote „escapen“ …
Eigentlich nur wenn Du etwas an do shell script o.ä. übergeben möchtest. Für AppleScript selbst ist das einfache Anführungszeichen (anders als das Doppelte) ein ganz gewöhnliches Zeichen in dem String das keines speziellen Handlings bedarf. Insofern hat das Problem des TEs auch nichts damit zu tun. Aber offenbar hat er sich daran fest gebissen :D
 
  • Gefällt mir
Reaktionen: mausfang
Zurück
Oben Unten