Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

CSV auslesen?

 
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Fischer-Bayern.de Foren-Übersicht -> AppleScript-Forum
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Knudsen
•->
•->


Anmeldedatum: 07.08.2006
Beiträge: 5

BeitragVerfasst am: 07.04.2008 - 09:04    Titel: CSV auslesen? Antworten mit Zitat

Hallo an alle,

Ich habe im Forum gesucht aber nichts dergleichen gefunden.

Ich muss eine cvs datei (ursprünglich excel tabelle) auslesen. Dabei geht es vor allem um Dateinamen und um eine Zahl. Nun sollen nacheinander alle Dateien in Photoshop geöffnet werden und je nach Zahl verschiedene Skripte starten.
Die PS skripte sind kein problem, aber wie lese ich die Daten aus der CSV und wie arbeite ich dann alle dateien, deren name in der CSV stehen nacheinander ab?

Wäre Klasse falls jemand Hilfe hat.

Grüße
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skeeve
•---->
•---->


Anmeldedatum: 20.04.2006
Beiträge: 1068

BeitragVerfasst am: 07.04.2008 - 10:18    Titel: Antworten mit Zitat

Wie sind die CSV Dateien aufgebaut? Texte sind mit oder one "? Was ist der Trenner? Csv legt den Verdacht "Komma" nahe. Aber Tab wäre einfacher (und ist häufiger anzutreffen).

Wilslt Du die Dateinamen und deren "Zubehör" per AS einlesen (open file ist das stichwort) oder (wie in Deiner PN angedacht) per "do shell script". Ersteres hat den Vorteil, daß Du alles mit AS Mitteln selbst erledigen anst, das aber vielleicht langsamer ist, vorallem, wenn Du " wegzaubern mußt. Letzteres hat den Vorteil, daß viel schon durch Perl, sed und Konsorten erledigt werden kann, was in AS Zeit kostet, aber nicht so einfach durch reine AS Programmierer zu warten ist.
_________________
"All problems are solved in slightly less than half an hour" (Chumbawamba, "Hey Hey We're The Junkies")
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Knudsen
•->
•->


Anmeldedatum: 07.08.2006
Beiträge: 5

BeitragVerfasst am: 07.04.2008 - 13:40    Titel: Antworten mit Zitat

die Datei ist so aufgebaut:

C1H5456;54658;BLABLA;;Bla 290;1

Das ist eine Zeile. Davon gibts eben mehrere verschiedene untereinander.
Ich benötige im Prinzip nur den ersten Wert und den letzten. Der erste ist der Dateiname, den letzten brauche ich für das Starten des jeweiligen Skripts.

Ich kann es selbstverständlich auch als tab delimited abspeichern, wenn das einfacher ist.


Schnelligkeit ist schon wichtig, da es sehr viele Zeilen werden können, und damit eben auch viele Bilder die nacheinander bearbeitet werden müssen.

Je nachdem was besser ist, könnte man auch zuerst alle mit Skriptnummer 1, dann alle mit 2 etc. abarbeiten, vielleicht geht das irgendwie besser?!?

Beim tab-seperated isses ja dann einfach nur ein tab statt ;
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skeeve
•---->
•---->


Anmeldedatum: 20.04.2006
Beiträge: 1068

BeitragVerfasst am: 07.04.2008 - 14:38    Titel: Antworten mit Zitat

Wenn das Format so einfach ist (also keine ") dann denke ich, daß es reicht, da mit "open file" zu arbeiten, um die Datei Zeile für Zeile einzulesen. Mit "Applescript's Text Item Delimiters" eingestellt auf ";" kannst Du dann die Zeilen in Einzelelemente unterteilen und greifst einfach auf item 1 und item 6 zu.

Reicht Dir das als Jinweis? Ansonsten such hier nochmal. "Applescript's Text Item Delimiters" und das Aufteilen von Zeilen ist hier schon oft beschrieben worden.
_________________
"All problems are solved in slightly less than half an hour" (Chumbawamba, "Hey Hey We're The Junkies")
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Knudsen
•->
•->


Anmeldedatum: 07.08.2006
Beiträge: 5

BeitragVerfasst am: 08.04.2008 - 15:50    Titel: Antworten mit Zitat

ok, danke dir, werde es morgen testen!

Applescript macht das ja dann schon zuverlässig, was die abarbeitung der dateien in einer schleife angeht oder?

Weil die Datei muss ja dann noch in Photoshop verarbeitet werden und ich frage mich, ob AS dann solange "wartet" oder ob ich am besten noch ein delay von beispielsweise 10sekunden einfügen muss.

Edit:
Ich habe gerade noch gesucht, aber ich finde keine info, wie es bei mehreren der oben genannten Zeilen aussieht!

Im Prinzip ist das hier ja zum Einlesen die Lösung:
http://www.fischer-bayern.de/phpBB2/viewtopic.php?t=2405&highlight=delimiter

Vielen Dank nochmal für den tipp!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
iScript
•---->
•---->


Anmeldedatum: 29.03.2001
Beiträge: 1116

BeitragVerfasst am: 08.04.2008 - 21:10    Titel: Antworten mit Zitat

z.b. so:

set alleZeilen to paragraphs of (read file ((path to "desk" as text) & "test.txt"))
repeat with eineZeile in alleZeilen
   display dialog eineZeile
end repeat


Und u.U. kommst du auch ohne Delimiters aus. Kommt drauf an, was der erste und letzte Wert so enthalten können:

set eineZeile to "C1H5456;54658;BLABLA;;Bla 290;1"
{word 1 of eineZeile, word -1 of eineZeile}
-- Ergebnis: {"C1H5456", "1"}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
Beiträge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Fischer-Bayern.de Foren-Übersicht -> AppleScript-Forum Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter