AUX File Writing Error

T

thewritersclub

Hi guys!

I'm new to python so please be aware that I'm probably missing the
obvious. Here's my problem...

Traceback (most recent call last):
File "<pyshell#37>", line 1, in <module>
f = open('c:\\' + t + '.csv', 'a')
IOError: [Errno 2] No such file or directory: 'c:\\AUX.csv'
As you can see python has no problem opening a file when t = "A", but
not when it is "AUX" (no "A.csv" or "AUX.csv" exists on the C:\ folder
prior to when these are run).

Is there any way I can create an "AUX.csv" file without the error?

Thanks,

Ryan
 
J

John Machin

Hi guys!

I'm new to python so please be aware that I'm probably missing the
obvious. Here's my problem...

Traceback (most recent call last):
File "<pyshell#37>", line 1, in <module>
f = open('c:\\' + t + '.csv', 'a')
IOError: [Errno 2] No such file or directory: 'c:\\AUX.csv'

As you can see python has no problem opening a file when t = "A", but
not when it is "AUX" (no "A.csv" or "AUX.csv" exists on the C:\ folder
prior to when these are run).

Is there any way I can create an "AUX.csv" file without the error?

Probably not. AUX, CON, NUL, PRN, LPT, COM1, COM2 etc (with or without
an extension) are reserved in Windows for specific devices for
compatibility with MS-DOS 1.00 programs, which did that for
compatibility with CP/M.

HTH,
John
 
G

Gabriel Genellina

Probably not. AUX, CON, NUL, PRN, LPT, COM1, COM2 etc (with or without
an extension) are reserved in Windows for specific devices for
compatibility with MS-DOS 1.00 programs, which did that for
compatibility with CP/M.

(This is OT now) Do you know why "AUX.csv" is invalid too? I can accept
that AUX (without extension) is an invalid filename, but it is quite
different from "AUX.csv"
 
S

Steve Holden

Gabriel said:
(This is OT now) Do you know why "AUX.csv" is invalid too? I can accept
that AUX (without extension) is an invalid filename, but it is quite
different from "AUX.csv"
Because Windows is brain-dead? There really is no sense in looking for
rationality where none exists. This is the way it is, and there's
nothing you can do about it.

regards
Steve
--
Steve Holden +44 150 684 7255 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://del.icio.us/steve.holden
Blog of Note: http://holdenweb.blogspot.com
See you at PyCon? http://us.pycon.org/TX2007
 
J

John Machin

(This is OT now) Do you know why "AUX.csv" is invalid too? I can accept
that AUX (without extension) is an invalid filename, but it is quite
different from "AUX.csv"

It is actually a valid file name, but the file is not on disk. I
presume that the OP got an error because it was in 'a' (append) mode
which requires an existing disk file. See below.

C:\junk>copy con aux.csv
fubar
^Z
1 file(s) copied.

C:\junk>copy con sux.csv
fubar
^Z
1 file(s) copied.

C:\junk>dir *ux.csv
[snip]
Directory of C:\junk

16/02/2007 01:19 AM 7 sux.csv
1 File(s) 7 bytes

Why? Who knows? We're talking CP/M, MS-DOS and Windows and you want to
know why? Probably too lazy to distinguish between 'AUX\0', 'AUX.\0'
and 'AUX.XYZ\0' ... probably stopped scanning on reaching the first
invalid character. If you're desperate to find out, dial up your
nearest RCPM and ask the sysop :)

Cheers,
John
 
G

Gabriel Genellina

It is actually a valid file name, but the file is not on disk. I
presume that the OP got an error because it was in 'a' (append) mode
which requires an existing disk file. See below.

C:\junk>copy con aux.csv
fubar
^Z
1 file(s) copied.

The above gives me an "Access denied" error; perhaps because AUX is my
serial port and it is currently in use.
Why? Who knows? We're talking CP/M, MS-DOS and Windows and you want to
know why? Probably too lazy to distinguish between 'AUX\0', 'AUX.\0'
and 'AUX.XYZ\0' ... probably stopped scanning on reaching the first
invalid character. If you're desperate to find out, dial up your
nearest RCPM and ask the sysop :)

Ahhhh... I think you hit the point, indirectly. On CP/M the filename was
not stored as 'AUX\0' - remember, ONLY 8 characters plus 3 for extension,
and NO PATH. A FileControlBlock (FCB) had exactly 11 characters reserved
for the file name (plus the drive number). So it was actually "AUX
" vs "AUX XYZ" and... well, the lazyness argument again.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,535
Members
45,007
Latest member
obedient dusk

Latest Threads

Top