• 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

Write ohne Variablen

Bomberzocker

Auralia
Registriert
08.06.08
Beiträge
202
Wenn ich einen write befehl gebe und in den Pfad variablen einsetze funktioniert das nicht. Ist das allgemein so oder nur bei mir?

so funktioniert es:
set RefNum to (open for access file ¬
"Macintosh hd:Benedikt:Users:Desktop:MeineDatei.txt" with write permission)
set Datei_Ende to (get eof RefNum)
set MeinText to ¬
"Das ist mein Text zum Testen." & return & ¬
"Es könnte durchaus noch mehr sein."
if Datei_Ende = 0 then
set DateiText to MeinText
else
set DateiText to return & MeinText
end if
try
write DateiText to RefNum ¬
starting at Datei_Ende + 1
close access RefNum
on error
close access RefNum
end try

so nicht:
set username to do shell script "whoami"
set RefNum to (open for access file ¬
"Macintosh hd:" & username & ":Users:Desktop:MeineDatei.txt" with write permission)
set Datei_Ende to (get eof RefNum)
set MeinText to ¬
"Das ist mein Text zum Testen." & return & ¬
"Es könnte durchaus noch mehr sein."
if Datei_Ende = 0 then
set DateiText to MeinText
else
set DateiText to return & MeinText
end if
try
write DateiText to RefNum ¬
starting at Datei_Ende + 1
close access RefNum
on error
close access RefNum
end try
 

Tekl

Fairs Vortrefflicher
Registriert
01.06.05
Beiträge
4.630
Du musst da zusammengehöriges Klammern. Ich würde es so machen:

set RefNum to (open for access file ((path to desktop folder as text) & "MeineDatei.txt") with write permission)
 

Bomberzocker

Auralia
Registriert
08.06.08
Beiträge
202
also variablen gehen da nicht oder hab ich was falsch verstanden? Mti den klammern funktioniert das auch nicht.
Ich wollte auch nicht nur den username mit ner variable verändern sondern evtl. noch mehr. Deswegen hat das nicht so viel geholfen.
 

Tekl

Fairs Vortrefflicher
Registriert
01.06.05
Beiträge
4.630
Das müsste klappen:
Code:
set RefNum to (open for access file ("Macintosh HD:Users:" & username & ":Desktop:MeineDatei.txt") with write permission)

Hart kodierte Laufwerksnamen sind aber selten gut, besser wäre z. B. path to startup disk.