I've run into a strange situation with file names containing multiple consecutive spaces passed through a piped open call.
Here's a semi-ugly workaround that might work for you: Rename the file to a sensible temporary name, do the piped open and process the file, then rename it back.