python开发_tempfile

python中的tempfile模块,是为创建临时文件(夹)所提供的

 如果你的应用程序需要一个临时文件来存储数据,但不需要同其他程序共享,那么tempfile模块来创建临时文件(夹)是个不错的选择

其他的应用程序是无法找到活打开这个文件(夹),因为tempfile在创建的过程中没有引用文件系统表,用tempfile创建的临时文件(夹),关闭

后会自动删除。

下面是我做的demo:

运行效果:

=====================================

代码部分:

=====================================

 1 #python tempfile
 2 
 3 '''
 4     import tempfile
 5     
 6     如何你的应用程序需要一个临时文件来存储数据,
 7     但不需要同其他程序共享,那么用TemporaryFile
 8     函数创建临时文件是最好的选择。其他的应用程序
 9     是无法找到或打开这个文件的,因为它并没有引用
10     文件系统表。用这个函数创建的临时文件,关闭后
11     会自动删除。
12 '''
13 
14 import os
15 import tempfile
16 
17 def make_file():
18     '''创建临时文件,不过创建后,需要手动移除
19         os.remove(file)
20     '''
21     file_name = 'c:\\tmp\\test.%s.txt' % os.getpid()
22     temp = open(file_name, 'w+b')
23     try:
24         print('temp : {}'.format(temp))
25         print('temp.name : {}'.format(temp.name))
26         temp.write(b'hello, I\'m Hongten')
27         temp.seek(0)
28         print('#' * 50)
29         print('content : {}'.format(temp.read()))
30     finally:
31         temp.close()
32         #os.remove(file_name)
33 
34 def make_temp_file():
35     '''创建临时文件,在关闭的时候,系统会自动清除文件'''
36     temp = tempfile.TemporaryFile()
37     try:
38         print('temp : {}'.format(temp))
39         print('temp.name : {}'.format(temp.name))
40         temp.write(b'hello, I\'m Hongten')
41         temp.seek(0)
42         print('#' * 50)
43         print('content : {}'.format(temp.read()))
44     finally:
45         temp.close()  #then the system will automatically cleans up the file
46 
47 def main():
48     make_file()
49     print('#' * 50)
50     make_temp_file()
51     
52 if __name__ == '__main__':
53     main()

 

posted @ 2013-08-16 14:33  Hongten  阅读(4240)  评论(0编辑  收藏  举报
Fork me on GitHub