Re: help with using temporary files

2005-11-22 Thread Jeremy Jones
Gerard Flanagan wrote:

Hello

 I'm sure its basic but I'm confused about the error I get with the
following code.  Any help on basic tempfile usage?


ActivePython 2.4.1 Build 247 (ActiveState Corp.) based on
Python 2.4.1 (#65, Jun 20 2005, 17:01:55) [MSC v.1310 32 bit (Intel)]
on win32
Type help, copyright, credits or license for more information.
  

from tempfile import NamedTemporaryFile

tmp = NamedTemporaryFile()
tmp.write(Hello)
tmp.close()

print tmp.name


c:\docume~1\gerard\locals~1\temp\tmpxqn4yl
  

f = open(tmp.name)


Traceback (most recent call last):
  File stdin, line 1, in ?
IOError: [Errno 2] No such file or directory:
'c:\\docume~1\\gerard\\locals~1\\temp\\tmpxqn4yl'


Thanks

Gerard

  


It gets created:

In [24]: import tempfile 
In [25]: t = tempfile.NamedTemporaryFile() 
In [26]: t.name
Out[26]: '/tmp/tmp9bmhap'
In [27]: ls -l /tmp/tmp*
-rw---  1 jmjones jmjones 0 Nov 22 11:15 /tmp/tmp9bmhap

In [28]: t.write(123)

In [29]: t.flush()

In [30]: ls -l /tmp/tmp*
-rw---  1 jmjones jmjones 3 Nov 22 11:15 /tmp/tmp9bmhap

In [31]: t.close()

In [32]: ls -l /tmp/tmp*
ls: /tmp/tmp*: No such file or directory



 From the docstring, it gets automatically deleted on close:

def NamedTemporaryFile(mode='w+b', bufsize=-1, suffix=,
   prefix=template, dir=None):
Create and return a temporary file.
Arguments:
'prefix', 'suffix', 'dir' -- as for mkstemp.
'mode' -- the mode argument to os.fdopen (default w+b).
'bufsize' -- the buffer size argument to os.fdopen (default -1).
The file is created as mkstemp() would do it.

Returns an object with a file-like interface; the name of the file
is accessible as file.name.  The file will be automatically deleted
when it is closed.


HTH,

- jmj
-- 
http://mail.python.org/mailman/listinfo/python-list


help with using temporary files

2005-11-22 Thread Gerard Flanagan
Hello

 I'm sure its basic but I'm confused about the error I get with the
following code.  Any help on basic tempfile usage?


ActivePython 2.4.1 Build 247 (ActiveState Corp.) based on
Python 2.4.1 (#65, Jun 20 2005, 17:01:55) [MSC v.1310 32 bit (Intel)]
on win32
Type help, copyright, credits or license for more information.

 from tempfile import NamedTemporaryFile

 tmp = NamedTemporaryFile()
 tmp.write(Hello)
 tmp.close()

 print tmp.name
c:\docume~1\gerard\locals~1\temp\tmpxqn4yl

 f = open(tmp.name)
Traceback (most recent call last):
  File stdin, line 1, in ?
IOError: [Errno 2] No such file or directory:
'c:\\docume~1\\gerard\\locals~1\\temp\\tmpxqn4yl'


Thanks

Gerard

-- 
http://mail.python.org/mailman/listinfo/python-list