I’m new to AppleScript and am having trouble. I want to write to a text file but after searching for the information am unable to do it. Anybody able to provide me with some insight? Thanks.
This should get you started:
tell application “Finder”
make new file at desktop with properties {name:“foo.txt”}
end tell
set out_file to “Macintosh HD:Users:username:Desktop:foo.txt”
–Open the output file
open for access file out_file with write permission
–reset the eof
set eof of the (out_file as alias) to 0
–The file will be overwritten each time the script is run
–Comment out this line if you want text to be
–appended rather than overwritten
–Now get the text to add to the file
display dialog “Please enter the text to write in the file” default answer “”
set the_text to the text returned of the result
write the_text to the (out_file as alias) starting at eof
close access the (out_file as alias)
–this script was automatically tagged for
–color coded syntax by Script to Markup Code
–written by Jonathan Nathan
Andy
Here’s the routine that I generally use (more info). The script will generate a file named “XXXX Sample Text File XXXX.txt” on the desktop.
set desktop_ to path to desktop as Unicode text
write_to_file("some text for the file", (desktop_ & "XXXX Sample Text File XXXX.txt"), false)
-- Include, but do not modify, the code below this line
to write_to_file(this_data, target_file, append_data)
try
set the target_file to the target_file as text
set the open_target_file to ¬
open for access file target_file with write permission
if append_data is false then ¬
set eof of the open_target_file to 0
write this_data to the open_target_file starting at eof
close access the open_target_file
return true
on error
try
close access file target_file
end try
return false
end try
end write_to_file
– Rob
Rob,
Thanks for posting this. Your solution is more robust and less error prone than mine. When ever I am working on scripts that open files and work on them, I always end up with a bunch of open test files that I can’t delete because the script opened them and died before it closed them.
Thanks again!
Andy
Andy,
In the name of full disclosure, the handler is one of Apple’s Essential Sub-Routines. With that said, I’m glad it was helpful. I hope that cma007 can understand and use it.
– Rob