in reply to Why aren't these equivalent?

To check whether Joost is right you might give delete rights to everyone for the file

If that isn't the problem you might check for unprintable control-characters in the filename by printing the length of $fileName and check for problems with the current directory by printing $ENV{PWD} or by using an absolute pathname instead of the '../../'