Issue 24196: Fail to create file if name starts with prn. (original) (raw)

Created on 2015-05-14 22:01 by borisompol, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Messages (3)
msg243219 - (view) Author: Boris (borisompol) Date: 2015-05-14 22:01
>>> f=open('prn.txt','w') Traceback (most recent call last): File "<pyshell#80>", line 1, in f=open('prn.txt','w') FileNotFoundError: [Errno 2] No such file or directory: 'prn.txt' Names that fail: prn. prn.txt prn.yourmmama.txt ... Names that do not fail: prn prn_.txt npr.txt ... Happens on Windows 7, Python3.3, both 32 bit and 64 bit This should be easy to replicate.
msg243224 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2015-05-14 22:18
I could be wrong, but I thought this was normal Windows behaviour, not related to Python. Same probably applies to other special names like NUL, COM1.
msg243226 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-05-14 22:22
It's a name reserved by Windows - see https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247.aspx#file_and_directory_names If you have a full (and 100% resolved) path, you can prefix it with \\?\ (plus escaping) to access a file by that name, but I wouldn't recommend it as you'll probably break Explorer. In any case, this is an OS limitation and not a Python issue.
History
Date User Action Args
2022-04-11 14:58:16 admin set github: 68384
2015-05-14 22:55:26 pitrou set status: open -> closedstage: resolved
2015-05-14 22:22:34 steve.dower set resolution: not a bugmessages: +
2015-05-14 22🔞28 martin.panter set nosy: + martin.panter, tim.golden, zach.waremessages: + components: + Windows
2015-05-14 22:02:34 pitrou set nosy: + steve.dower
2015-05-14 22:01:13 borisompol create