This all depends upon your web host.
When I was with Verizon awhile back, I could create and write to any file I wanted via a script on their server. I could also FTP any file I wanted to their server and edit it as I pleased. But when I switched to another hosting co., all of a sudden I was having the same problem you are.
For reasons that are still not clear to me, if I use a script to create a file, the web host has it set up so that I have full priviliges. But if I create a file locally (using Windows, whatever) and FTP that file to the server, I cannot edit it.
Their explanation has been that by creating a file via a PHP script, I own that file. But by FTPing one, Apache owns the file (or vice versa).
This only causes me an inconvenience when I want to change any data in a server file directly (by editing it via my FTP client). I cannot do it. I am stuck with the data in the file the way it is. Of course, once I download it, then it's mine again to do with as I wish.
I know this is a very confusing topic, and mostly due to security issues -- depending upon your web host, but I hope that helps.
Ask your web host for a better explanation, and let me know what you find out!