我正在编写一个更改我的桌面背景的程序。它通过读取文本文件来做到这一点。如果文本文件显示其中一个 BG 文件名,它会将那个文件名保存为我的背景,并将另一个文件名写入文件并关闭它。
我似乎无法让它工作。
这是我的代码:
import sys, os, ctypes
BGfile = open('C:\BG\BG.txt', 'r+' )
BGread = BGfile.read()
x=0
if BGread == 'mod_bg.bmp':
x = 'BGMATRIX.bmp'
BGfile.write('BGMATRIX.bmp')
BGfile.close()
elif BGread == 'BGMATRIX.bmp':
x = 'mod_bg.bmp'
BGfile.write('mod_bg.bmp')
BGfile.close()
pathToImg = x
SPI_SETDESKWALLPAPER = 20
ctypes.windll.user32.SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, pathToImg, 0)
当我使用"r+"
它给我这个错误:
Traceback (most recent call last):
File "C:\BG\BG Switch.py", line 13, in <module>
BGfile.write('mod_bg.bmp')
IOError: [Errno 0] Error
这根本没有帮助!
当我使用"w+"
它时,它只会删除文件中已有的内容。
谁能告诉我为什么会出现这个奇怪的错误,以及解决它的可能方法?