If the last block of code is copied exactly then you are opening WRITE for reading which doesn't sound like what you want to do. If that works, but opening it for writing doesn't then you probably don't have permission to write to the file, but without telling us the value of $! it's difficult to diagnose exactly what your problems are.
Comment on Re: opening new file in different directory
Huh, quite right, my bad. I've amended my WRITE (actually... it's a root node... but the excellent davorg obliged). The error message I get when opening the file for writing is No such file or directory