Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
drek •->

Anmeldedatum: 16.10.2001 Beiträge: 12
|
Verfasst am: 16.10.2001 - 20:53 Titel: variabel speichern |
|
|
Hallo Zusammen,
ich beginne gerade erst mit applescript und da habe ich
gleich ein vielleicht auch "dummes" problem.
wie bringe ich applescript dazu variabeln in eine .txt-datei auf der HD
zu speichern?
z.B.:
set hallo to "hallo welt"
write ("hallo.txt") as text??? Hiiiiiiiiiiife bitte
mit hoffnung auf schnellen rat!
_drek |
|
Nach oben |
|
 |
macgix •--->


Anmeldedatum: 13.12.2000 Beiträge: 206 Wohnort: K–ln
|
Verfasst am: 16.10.2001 - 22:29 Titel: variabel speichern |
|
|
Zuerst musst Du die Datei öffnen und idealerweise das Ergebnis (Referenz zur Datei) zwecks Weiterverwendung in einer Variablen speichern:
set tRef to open for access file (dateipfad_als_text) with write permission
Dann kannst Du Text mit
write "text" to tRef
in die Datei schreiben. Solange die Datei nicht geschlossen wird, wird neu hinzugefügter Text immer hinter den bereits vorhandenen gehängt.
Am Ende schliesst Du die Datei mit
close access tRef
wieder. Aber Vorsicht! - Du solltest das immer in einen Error-Handler kleiden, damit die Datei geschlossen wird, wenn ein Fehler auftritt und nicht geöffnet auf der Festplatte verbleibt.
Also
try
set tRef to open for access file (dateipfad_als_text)
write "text" to tRef
on error errtext number errnum
close acces file (dateipfad_als_text) -- besser als tRef falls der Fehler beim Öffnen der Datei auftrat
activate
display dialog "Fehlertext: " & errtext & " / Nummer: " & errnum
end try
Wenn nur aus der Datei gelesen werden soll, genügt zum Öffnen:
set tRef to open for access file (dateipfad_als_text)
also ohne "with write permission" und dann
set tText to read file tRef
Die Befehle read und write sind im AppleScript Language Guide gut erklärt. Den wiederum gibt's bei Apple.com auf der Web-Site als PDF und HTML Datei(en).
Diese können noch mehr, sind aber in AppleScript 1.5.5 zum Beispiel total buggy, weswegen auch das AppleScript 1.6 Update separat existiert. _________________ [macgix] |
|
Nach oben |
|
 |
macgix •--->


Anmeldedatum: 13.12.2000 Beiträge: 206 Wohnort: K–ln
|
Verfasst am: 16.10.2001 - 22:36 Titel: variabel speichern |
|
|
P.S.: Auch beim Lesen das Schließen der Datei nicht vergessen! _________________ [macgix] |
|
Nach oben |
|
 |
drek •->

Anmeldedatum: 16.10.2001 Beiträge: 12
|
Verfasst am: 17.10.2001 - 00:11 Titel: variabel speichern |
|
|
hallo macgix,
und danke fuer deine schnelle erste hilfe...
aber bitte verstehe ich bin immer noch mega-neu in applescript
und moechte dir zu deinem beispielscript ein paar fragen stellen.
angenommen die .txt-datei in die gespeichert werden soll heisst
file.txt und liegt im verzeichnis Macintosh HD...wie muesste ich dann
das ganze in deinem script referenzieren?
ist der in deinem script verwendete name tRef fest oder steht er fuer etwas was ich beachten muss.
sorry für soviel blödheit aber kannst du mir nochmals helfen?
dein script ging==
try
set tRef to open for access file (dateipfad_als_text)
write "text" to tRef
on error errtext number errnum
close acces file (dateipfad_als_text) -- besser als tRef falls der Fehler beim Öffnen der Datei auftrat
activate
display dialog "Fehlertext: " & errtext & " / Nummer: " & errnum
end try
bitte hilf mir nochmal
_drek |
|
Nach oben |
|
 |
macgix •--->


Anmeldedatum: 13.12.2000 Beiträge: 206 Wohnort: K–ln
|
Verfasst am: 17.10.2001 - 01:14 Titel: variabel speichern |
|
|
Keine Sorge. Du bist bestimmt nicht blöd, da Du Dich ja mit AppleScript beschäftigst !
Zu Deiner Frage:
Schaue Dir mal das Ergebis (im Ergebnisfenster des Skripteditors) an, wenn Du "choose file" in einem leeren Skriptdokument ausgeführt hast und schaue dann mal wenn Du "(choose file) as text" probierst.
Im zweiten Fall erhältst Du den Dateipfad zu der Datei mit dem ":" als Trennzeichen. (Bei URLs im Internet ist das der "/" ).
Mit dem "path to" Befehl kannst Du noch mehr erreichen:
set the_path to (path to startup disk) as text
ergibt --> "Macintosh HD:"
oder
set the_path to (path to desktop) as text & "name_meiner_textdatei"
ergibt --> "Macintosh HD:Desktop Folder:name_meiner_textdatei"
"path to" funktioniert mit allen "heiligen" (sacred) Ordnern wie z.B. "preferences folder", "extensions folder", etc.
Ob "tRef", "the_path" oder "MickyMaus" ist völlig egal. Das sind Variablennamen, die frei wählbar sind. Vermeiden sollte man es allerdings Namen zu vergeben, die AppleScript selbst benutzt (z.B.: "result").
Verwendet man deutsche Begriffe für Variablennamen kann einem das kaum passieren. - Viel Spaß!  _________________ [macgix] |
|
Nach oben |
|
 |
drek •->

Anmeldedatum: 16.10.2001 Beiträge: 12
|
Verfasst am: 17.10.2001 - 09:49 Titel: variabel speichern |
|
|
hi macgix
ich habe dir nun mal das script geschickt wie ich es bis dato
umgebaut habe. kannst du da nochmal drüberschauen denn ich
bekomme eine fehlermeldung wenn ich das script ausführen möchte.
- die variabel im script heisst bei mir ¥schreibe¥
- der ort der .txt-datei soll Macintosh HD sein
- in diese .txt-datei soll "hallo" geschrieben werden
ist soweit alles richtig???
führe ich unten stehendes script aus bekomme ich die
fehlermeldung "expected end of line but found class name"...
und zwar in dieser reihe >>close acces file ("Macintosh HD:file.txt")
kannst du mir bitte nochmal weiterhelfen??
_drek
anbei mein script:
try
set schreibe to open for access file ("Macintosh HD:file.txt")
write "hallo" to schreibe
on error errtext number errnum
close acces file ("Macintosh HD:file.txt") -- besser als tRef falls der Fehler beim Öffnen der Datei auftrat
activate
display dialog "Fehlertext: " & errtext & " / Nummer: " & errnum
end try |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 17.10.2001 - 10:03 Titel: variabel speichern |
|
|
Nur kurz drüber gelesen - close access! mit 2 "s"
Gruß,
Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
drek •->

Anmeldedatum: 16.10.2001 Beiträge: 12
|
Verfasst am: 17.10.2001 - 10:28 Titel: variabel speichern |
|
|
erstmal an alle die mir da helfen ein riiiiiesiges danke!!! :)
...das hilft schonmal weiter.
jetzt gibts aber wiederum einen fehler der da sagt:
"file not open with write permission"
wie kann ich denn das noch schrauben????
bitte nochmal helfen...
_drek |
|
Nach oben |
|
 |
drek •->

Anmeldedatum: 16.10.2001 Beiträge: 12
|
Verfasst am: 17.10.2001 - 10:34 Titel: variabel speichern |
|
|
noch mal ein ansatz:
wenn ich nach open for access...schreibe with write permission
klappt es - gute idee oder unelegante loesung???
hier das jetzige script:
try
set schreibe to open for access file ("Macintosh HD:file.txt") with write permission
write "hallo" to schreibe
on error errtext number errnum
close access file ("Macintosh HD:file.txt") -- besser als tRef falls der Fehler beim Öffnen der Datei auftrat
activate
display dialog "Fehlertext: " & errtext & " / Nummer: " & errnum
end try |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 17.10.2001 - 11:56 Titel: variabel speichern |
|
|
Das ist natürlich richtig! with write permission = mit der Erlaubnis zu schreiben (in die DateiÖ) ;)
Gruß,
Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
|